MCP server
Give Claude, Cursor or any other MCP client read access to your SEOAgent data - and, when you confirm the cost, the ability to run its paid actions.
Create a key
Settings → Account → API keys. A key is shown once and stored only as a hash, so copy it when you create it. Each key belongs to one user and can see every site on that user's account.
Cursor and other HTTP clients
The endpoint is a stateless Streamable HTTP server. Point your client at it and send the key as a bearer token:
{
"mcpServers": {
"seoagent": {
"url": "https://seoagent.bot/api/mcp",
"headers": { "Authorization": "Bearer sk_seoagent_YOUR_KEY" }
}
}
}Claude Desktop
Claude Desktop speaks stdio, so bridge it with mcp-remote:
{
"mcpServers": {
"seoagent": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://seoagent.bot/api/mcp", "--header", "Authorization: Bearer sk_seoagent_YOUR_KEY"]
}
}
}What the tools do
Reading is free and unrestricted: sites, opportunities, articles and their bodies, rankings, AI visibility, backlinks, the website audit, traffic and reports. Creating an idea, planning an article and saving a body are free too.
Four tools spend money or change a live site: generate_article, publish_article, check_rankings and run_visibility_check. Each one refuses to act unless it is called with confirm_cost: true, and answers with an estimate in cents instead. That is deliberate - an assistant should have to state its intention twice before spending your budget.
Limits
60 requests a minute per key. Every paid tool is still bound by the same per-site monthly budgets as the app itself, so a runaway agent hits the same ceiling a runaway human would.