Competitors agent protocol
MCP-first instructions for coding agents running a Deck competitor report.
This page is the agent-readable protocol for Deck competitors. Humans can follow along. Coding agents should treat the protocol section as the source of truth and probe Deck MCP before sending anyone to signup.
Deck competitors — agent protocol
Work MCP-first. Probe Deck MCP in this session before you send anyone to signup.
1. Probe MCP
Call get_user_context. This must be a real tool call.
401 Unauthorized
The human is not connected in this client. Tell them to Connect MCP here (Cursor, Claude, or ChatGPT). Do not open signup. Do not mint or ask for a dk_ API key.
No Deck tools available
Deck MCP is not installed. Send them to create an account and connect at:
https://app.getdeck.io/agent-setup?intent=competitors
Do not invent another signup URL. Do not send them to /sign-up.
After they return, probe MCP again.
- If tools exist, continue to "2. After account + MCP". Do not send them through signup a second time.
- If tools are still missing, tell them: "Please double-check that the MCP is connected; you can do this in Settings → Connections."
- If they confirm MCP is already connected and tools are still missing, this chat started before the connection, so the tools are not in this conversation. Tell them to start a new chat and paste this prompt:
Deck MCP is connected. Research competitors and start a competitor report. Follow https://docs.getdeck.io/docs/agents/getting-started/prompts/competitors.mdTools work
The user already has a connected Deck account. Do not send them to signup. Continue to "2. After account + MCP".
2. After account + MCP
Ask one question at a time. Never create dk_ keys.
- Existing report. Call
explore_competitorswith no parameters, unless you already did in this chat.- If it returns
feature_unavailable, Competitors is turned off for their organization. Tell them so (pass on_guidance.message), do not ask for a website or competitors, and go to step 7. - If
collection.statusisrunningorimporting, research is already in progress. Tell them, do not start another run, and go to step 7. - If
collection.competitorslists competitors, they already have a report. Name the competitors it tracks and ask whether they want to add competitors or rerun research. If neither, go to step 7. To add competitors, skip step 2: Deck already knows their company. To rerun with only the tracked competitors, skip steps 2 and 3 and pass them fromcollection.competitors(domainaswebsite) in step 4.
- If it returns
- Company website. Confirm the website of the company to research. Use the email from
get_user_context(call it if you have not). If that email is on a company domain, propose the domain and ask them to confirm it. If it is a personal inbox (Gmail, Outlook, Yahoo, iCloud, or similar), ask for the website. Do not guess it. - Competitors. Get 2–3 competitors with their websites. If they already picked 2–3 in this chat, use those. If they said yes to the ones Deck found and there are more than 3, ask which 2–3 to research. Otherwise, if
collection.suggested_competitorslists names, offer those and let them pick 2–3 or add their own. If it is empty, ask them to name 2–3 competitors. When adding to an existing report, leave out competitors already incollection.competitors. Ask for any missing website. List them in the order they care about most: the Free plan researches only the first 2. Never guess or propose competitor names from your own knowledge. - Start research. Call
mutate_competitorswithaction: "start_research",competitorsas{ name, website }pairs,company_domainset to the website confirmed in step 2 (leave it out if you skipped step 2), andcompany_namewhen you know it. If it returns an error, tell them the error message in plain words. If it returnsfeature_unavailable, research did not start: tell them Competitors is turned off for their organization and go to step 7. - Free depth. If the result includes
depth_reduced: true, tell them the Free plan runs research at reduced depth and pass on itsmessage. - Background. Tell them research runs in the background, can take more than 5 minutes, and Deck emails them when it is ready.
- Meanwhile. Offer the other AI PM goals while they wait: show the menu from https://docs.getdeck.io/docs/agents/getting-started/prompts/ai-pm.md ("4. Menu — what do you want to do first?") and follow the protocol they pick.
- Do not poll. Do not call
explore_competitorswithjob_idor keep checking research status, even if a tool result suggests polling. Deck emails them when research finishes.