SEO Perception
SEO MCP server for Cursor and Claude
SEO Perception MCP is a Google Search Console–aware SEO MCP server: keywords, crawl context, and Possibilities in the AI you already write with—from stored evidence, not live Google calls or guesses.
- Real Search Console keywords, not invented SEO advice
- List SEO Possibilities with severity and evidence
- Works in Cursor, Claude, and other MCP clients
Ask once. Get evidence-backed edits.
Illustrative chats. The shape of what your MCP client can do once a token is connected. Real answers use your stored Search Console and crawl data.
You · MCP client
“Use SEO Perception to find the biggest losing keywords on /pricing and suggest concrete content changes to recover them.”
Tools called
get_page_diagnostics + search_queries
Stored evidence ticket
Stored evidence for /pricing
pricing calculator
Clicks down 42%. Position 8.4 to 14.1. Not in H1 or body.
enterprise seo pricing
Impressions up. CTR 0.9% vs page avg 3.1%.
Open possibility
query-not-in-content (high)
Suggested next move
Add a short Pricing calculator section, mention enterprise packaging in an H2, and tighten the meta description around those queries.
No live Google call. Data from stored weekly GSC and crawl.
Why MCP
Write from losses
Surface declining queries on a URL, then draft the section, title, or FAQ that matches what Search Console already showed you.
Ship the right page
Resolve cannibalization and content gaps with preferred URLs and severity, before you spend a sprint rewriting the wrong page.
Stay in your editor
Cursor, Claude, VS Code, or any MCP client. One endpoint, personal tokens, same stored evidence you trust in the dashboard.
Connect in minutes
Create a personal access token, point your MCP client at the endpoint, and start asking. Full guide: SEO Perception MCP docs.

Personal access tokens
Create and revoke under Account → MCP. Each secret is shown once. Store it as SEOPERCEPTION_MCP_TOKEN.
Sign in on a paid plan, then open Account → MCP.
Cursor
Add to ~/.cursor/mcp.json or project .cursor/mcp.json:
{
"mcpServers": {
"seo-perception": {
"url": "https://seoperception.com/mcp",
"headers": {
"Authorization": "Bearer ${env:SEOPERCEPTION_MCP_TOKEN}"
}
}
}
} Other MCP clients
- URL:
https://seoperception.com/mcp - Authorization:
Bearer <your MCP token>
Claude Desktop, Claude Code, VS Code, and others use the same remote endpoint. If a client only supports local MCP, use that client’s remote or proxy option with the URL and token above.
Data boundary
- MCP never re-queries Google Search Console or URL Inspection.
- Answers use data SEO Perception has already collected for your sites.
- Your MCP client may send returned evidence to its model provider. Treat results as sensitive site analytics.
- Paid plans only (Starter, Pro, Business, Enterprise).
Tool status
Only Available tools
appear in tools/list.

Available
| Tool | Status | What it does |
|---|---|---|
seoperception_list_sites List sites | Available | List owned websites with stored GSC and crawl freshness. |
seoperception_get_site_overview Site overview | Available | Summarize stored search performance, leading pages, queries, and rank momentum. |
seoperception_search_queries Search queries | Available | Search and filter stored query evidence by content match, CTR, position, and intent. |
seoperception_list_opportunities SEO opportunities | Available | List bounded, evidence-backed crawl and Search Console possibilities. |
seoperception_find_cannibalization Keyword cannibalization | Available | Find stored query conflicts and the deterministic preferred page. |
seoperception_find_content_gaps Content and snippet gaps | Available | Find stored low-CTR, missing-query, title/snippet, question, and refresh opportunities. |
seoperception_suggest_internal_links Internal-link suggestions | Available | Return stored destination and anchor opportunities without crawling or probing URLs. |
seoperception_get_page_diagnostics Page diagnostics | Available | Combine one page’s crawl metadata, stored GSC trends, top queries, and possibilities. |
Planned
| Tool | Status | What it does |
|---|---|---|
seoperception_compare_periods Period comparison | Planned | Compare explicit stored weekly periods with deterministic deltas. |
seoperception_find_content_decay Content decay | Planned | Detect sustained stored click and position declines. |
seoperception_get_geo_breakdown Country and device breakdown | Planned | Read stored country/device facts for Business and Enterprise sites. |
seoperception_generate_report Hosted report | Planned | Create a bounded, shareable analysis artifact. |
Permanently excluded
| Tool | Status | What it does |
|---|---|---|
live_gsc_query_or_inspection Live Google calls | Excluded | Direct GSC queries, URL Inspection, collection, and Google OAuth are permanently excluded. |
mutations_and_refreshes Mutations and refreshes | Excluded | Recrawls, indexing writes, issue updates, PSI refreshes, and LLM generation are excluded. |
More prompts
Prefer observed evidence from tool results over invented recommendations.
List sites
“List my SEO Perception sites and tell me which data is freshest.”
Site overview
“Summarize the strongest gains and losses for my site using stored data.”
Search queries
“Find non-branded queries in positions 5–20 that are missing from their landing page.”
SEO opportunities
“Show the highest-priority open SEO opportunities and explain the evidence.”
Keyword cannibalization
“Find keyword cannibalization and recommend which page should be preferred.”
Content and snippet gaps
“Find the biggest content and snippet gaps, then suggest rewrites that match the losing keywords.”
Internal-link suggestions
“Suggest internal links and natural anchor text for pages with ranking potential.”
Page diagnostics
“Diagnose /page1/ from crawl state, top queries, and opportunities, then tell me what to rewrite first.”
Rate limits
POST /mcp: 60/min per IP before auth, 120/min per token after.- Tool calls: 30/min per user, token, and site combination.
- Token creation: 5 attempts per user per hour.
Security
Personal tokens, not passwords
Never put your login password or session cookie in an MCP client config. Manage tokens under Account → MCP.
Troubleshooting
- 401: create a new token in Account → MCP and update the env var.
- 403 paid_plan_required: upgrade, then create a token.
- 429: wait for the retry time in the response.
- 406: send
Accept: application/json, text/event-stream. - Empty lists usually mean no stored data yet for that site.
Guides for MCP SEO workflows
Learn how an SEO MCP server works, how stored Search Console evidence differs from live API MCPs, and how to run practical workflows from Cursor.
Ready to write from real search data?
MCP is included on every paid plan. Create a token and paste one of the prompts above.