Docs

Connect MCP

The server speaks streamable-http, JSON-RPC over POST, at https://app.seoaio.ai/api/mcp. After OAuth an agent reads the same measured data the dashboard shows, with the sample size and interval attached, and can propose changes a person approves.

Configuration

Claude Code

Run this in your terminal:

claude mcp add seoaio --transport http https://app.seoaio.ai/api/mcp

Claude Desktop, Cursor, VS Code

Add this to your MCP settings file:

{
  "mcpServers": {
    "seoaio": {
      "type": "http",
      "url": "https://app.seoaio.ai/api/mcp"
    }
  }
}

Anything else

Any MCP client that speaks Streamable HTTP:

https://app.seoaio.ai/api/mcp

No Authorization header in the file. The first call answers 401 and starts OAuth; see auth.

Call order

  1. list_assets for an assetId. Never invent one.
  2. get_measurement_status: how old the data is, what is running, what already awaits approval.
  3. The other 10 read tools as needed; see the tools reference.
  4. A propose_* tool (5 of them) only for a change the user asked for. The only writes are propose_competitor, propose_fact, propose_measurement, propose_prompt and propose_remove_competitor, and every one of them queues a change request for a human to approve rather than changing anything. Nothing here sends email, charges a card, edits your site, or spends money on an engine call.

What every result carries

dataStatus, one vocabulary on every tool, beside the specific fields:

dataStatusMeaning
okThere is at least one result, or a measured zero.
not_measuredNo measurement of this kind exists yet for the asset. Not zero, and not a broken connection.
empty_filterData exists, and the filter you passed matched none of it. Retry without the filter.
queuedA propose tool queued a change request for a person; nothing has changed.

href, on every read: the dashboard page that holds the evidence behind the result, for the right site. The link goes through /dashboard/go, which switches a signed-in person to the site named in the result, if it is theirs, and lands on one of /dashboard/analyze, /dashboard/optimize, /dashboard/source-trust, /dashboard/requests, /dashboard/sites. A person approves proposals at https://app.seoaio.ai/dashboard/requests.

Discovery

  • Server card: the tools with their annotations, the instructions, the auth block.
  • AI catalog: the server, the skills and the indexes, for a discovery service.
  • The skill: the whole procedure, for an agent.