Get started
Four steps: a site with a measurement, a connected client, the first 401 (which is expected), and one real prompt.
1. A site with a measurement
Create an account, add the site, and run a measurement from the dashboard. Until one has run, every tool answers with dataStatus: not_measured, which is the server working, not a broken connection.
2. Connect a client
There is no key to paste. The client registers itself, you approve it on a consent screen, and you can revoke it under Connected apps at https://app.seoaio.ai/dashboard/settings/api.
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
3. The first 401 is expected
The client's first request to https://app.seoaio.ai/api/mcp carries no token and answers 401. That response points the client at https://app.seoaio.ai/.well-known/oauth-protected-resource, which is how it finds the authorization server and opens the browser. Sign in, approve, and the next call carries a token. If nothing opens, see troubleshooting.
4. The first prompt
Paste this in the chat that has the server connected:
Call list_assets and pick my site. Call get_measurement_status, then get_visibility_score, get_answer_share and list_findings. Tell me what is measured, what is held or not measured, and what to change next. Keep every number's sample size and interval next to it. Do not invent anything.
For an agent, the whole procedure is one file: https://seoaio.ai/SKILL.md. It carries the call order, the rules for quoting a number, and the pointers to the other skills.
