How the door answers
What your own agent meets when it calls sourcesignal over MCP: one address, the token on every request, the limits on each call, long answers in parts and slow work it checks on later.
Updated October 22, 2026Markdown
The door is the one address your own agent works through: https://www.sourcesignal.ai/api/mcp. This page explains how it answers, so you know what your agent sees when a call is slow, long, refused or over a limit, and what it is told to do next. To make a token and connect a client, see Connect your own agent over MCP. For every tool by name, see the Tool reference.
One address, every request on its own
- The door speaks MCP over HTTP (streamable HTTP), on GET and POST. There is no SSE endpoint.
- It keeps no session between requests. Each request is checked and answered on its own, so every request carries the token.
- The token goes in
Authorization: Bearer <secret>. A client that cannot set that header, such as a Claude Desktop connector, sends the secret inx-api-keyorx-auth-tokeninstead. Connect your own agent over MCP shows each client's setup. - A wrong, revoked or expired token gets the same short refusal (HTTP 401), whatever the reason. It is never a sign-in page, so a client should not offer to sign in.
- Who the token works as, its scopes and your role are read again on every request. A role you lose is gone from your agent on its next call.
Clients that run in a web page
A client that runs inside a browser sends the address of the site it runs on. The door accepts only two kinds: sourcesignal's own site, and Claude on the web (claude.ai and claude.com), which is where Claude's own connectors call from. Any other site is refused (HTTP 403) before the token is read.
Clients that run on your computer or a server, such as Claude Code or a script, send no site address and are never refused for it.
What your agent can see
- Your agent receives the list of tools its token's scopes open, and nothing else. A tool outside those scopes is not refused: it is missing from the list, so your agent never knows to call it. The Tool reference groups every tool by the scope that opens it.
- Its first call is
start. It says who the agent works for, the projects the token reaches, the plan's room, how every change lands and the recipes it can follow, and gives the agent a connected line to repeat to you. - Every other call names a project by its id, except the account reads under "Read the account". A project outside the token's reach is refused with "This token is limited to other projects. Ask the person who made it for a token that covers this one."
- Links in answers are full addresses, so your agent can hand you the exact page to open.
- Words that come from outside sourcesignal, such as a publisher's reply, an AI answer or a page title, reach your agent fenced and marked as an untrusted excerpt, so it can read them as quotes and never as instructions.
120 requests a minute
Each token may make 120 requests a minute. Past that, the door answers HTTP 429 with a Retry-After header that says how many seconds to wait, and a short message that the token sent too many requests. Nothing was read or changed. Your agent waits and tries again.
The limit is per token, so two agents on two tokens never slow each other down.
60 seconds a call
Each call has 60 seconds. A call that runs past them still answers, inside the same request, and the answer tells your agent what to do next:
- A read answers that it took longer than 60 seconds. It changed nothing, so your agent can simply try again.
- A change may already have landed. The answer says so and tells your agent to check with
statusbefore it tries again, so nothing happens twice. - A question to Spot may still finish. The answer tells your agent to check with
statusbefore it asks again, so the question is not asked, and counted, twice.
Long answers come in parts
A read's answer is at most 24,000 characters. A longer one is cut at its longest list, by whole rows, and says so:
- The answer names the list it cut, how many rows it shows and from which row, and carries a
continue_fromvalue. - Your agent sends the same call again, with the same arguments plus that
continue_from, and reads the next rows. - It repeats until an answer comes back with no
continue_from.
A continue_from works only with the call that gave it. Sent with another tool or other arguments, it is refused rather than misread. Nothing is kept on the server between the parts: each part is read fresh, so a list that moved in between reads as it is now.
Slow work: check back with status
Asking Spot (spot_ask) and asking for plan options (spot_plan) can take longer than a call should wait. The door waits up to 40 seconds for the answer. If it is not ready, your agent gets a result_id and is told to call status with it in about thirty seconds. The work goes on meanwhile.
status is the one place your agent checks on anything it started:
- A result of a question: still working, done with the answer, or failed with the reason.
- A card it left for you: waiting, applied with what it did, dismissed, expired or failed.
- A job, such as a pipeline run: where it stands, what it produced and whether it can be retried or canceled.
Asked to, status waits up to 40 seconds for the work to settle before it answers. Called with no id, it lists the latest cards and results from your agent on the project, and its latest jobs.
Every question your agent asks Spot also lands in your own Spot threads, titled "Your agent asked: …", with the answer under it.
Asks that use the AI allowance
Six tools run sourcesignal's own AI for the account: asking Spot (spot_ask), asking for plan options (spot_plan), reading a steering sentence (steer_compile), suggesting keywords from your prompts (keywords_suggest, whose terms then wait as a card for you), suggesting sections of your outreach prompt (outreach_prompt_suggest, which saves nothing) and suggesting a sequence template's emails (sequence_template_suggest, which saves nothing either). Each is checked against the account's AI allowance before it starts. No plan limits that allowance today: the work is counted for the account, not capped. No other tool uses it at the door. A card you apply runs the same work as the button it stands for, and counts the same way.
spot_askandspot_planalso count toward your 30 questions to Spot an hour, the same 30 you ask in the panel. At the limit your agent is told "Spot answers 30 questions an hour per person. The next one opens in N minutes."- An ask refused before it starts, for example over the hourly limit, uses nothing.
- While the account is paused or hidden, asks are refused, as they are for you in the app.
See Usage for how the account's usage is counted.
The plan's room
Your agent works within your plan, and it is told how much of that room is used, so it can say when an answer is thin for that reason rather than guess.
startandproject_briefanswer the plan's room: each limit with what is used and what is left, which are at or near their cap, what the plan leaves out (the deep dive, content plan outlines and drafts) and what the next plan lifts, with every number read from the plan catalog. A limit is near its cap at 80 percent, the same line Billing colors.- It carries one line written for you, for example "Your Brand plan is at its cap on tracked prompts (30 of 30) and AI engines per project (3 of 3). Growth lifts tracked prompts to 200 and AI engines per project to 6: more questions watched and more engines answering. You change plans in Settings, Billing." Your agent is asked to relay that line in one sentence when an answer is thin for the plan's reason, and not otherwise. While every limit has room, there is no line.
- A token limited to named projects reads only the engines on its project and the plan's features, never the account's meters.
- No agent changes a plan. Billing is on the never list, and the line always sends you to Settings, Billing, where owners and admins choose.
Cards, mandates and refusals
- Changes are cards. A tool that prepares a change answers with the card's id and a link that opens the card on Settings, Agents, which your agent is told to show you. The card waits for you there and in the Spot panel. Where your setting under Settings, Agents applies that kind of change at once, the tool answers applied instead, with the time until which it can be taken back. See Change cards: apply and undo.
- The card in the chat. Every tool that prepares a change also names a small interactive card. Agent apps that show interactive cards, such as Claude, ChatGPT and VS Code, draw it in the chat beside your agent's answer: the title, what it changes and the time left, with one action, "Open in sourcesignal". A long card shows its first rows, with the rest one press away. It loads nothing from the web and applies nothing: a press inside an agent's app would arrive with your agent's token, not as you. Apps that do not show interactive cards show the answer's text and the link instead.
- Mandates. Besides your setting, a mandate you approved lets your agent make a change on its own: the changes the mandate names, by name or by kind, within its decisions and paid work a day. It can ask for the outreach work in one go with the
presetofmandate_propose: promoting pages, researching contacts, drafting nudges, a page's angle, recommendations, the outreach angle, editing and rewriting pitch drafts, and leaving a reply ready, never a send. See Agent scopes and limits. - Taking back its own.
take_backwith a change'scard_idlets your agent put back a change it made on its own, for a day where the change can be taken back, or withdraw a card it left that still waits for you. It touches nothing you applied or decided and nothing another agent did. A card it withdrew says so on Settings, Agents. - Refusals are final. A refusal says what was refused and, where there is one, the next step. Your agent is told not to retry a refusal in other words.
spot_explaincan explain what a refusal means and what to do next.
Recipes
Recipes are short plans for the questions agents are asked most, such as "What to do first today" or "Why share of voice dropped and what moved". Each names the calls in order and what each returns. start hands them to your agent, and a client that lists prompts offers each one as a prompt whose name starts with recipe_. A recipe runs nothing by itself: a change it leads to lands like any other change, as a card or at once where your setting or a mandate says so. The Tool reference lists every recipe.