Documentation
QuickSEO MCP Server
The QuickSEO MCP server lets any Model Context Protocol compatible AI agent — Claude Desktop, Claude Code, Cursor, or your own — read your QuickSEO data and act on it. Pull AI visibility scores, Google Search Console rows, tracked prompts, and competitors directly into your agent workflows.
https://quickseo.ai/api/mcpClaude Code
Run this in your terminal. On the latest Claude Code you can also use the /mcp slash command.
claude mcp add --transport http quickseo https://quickseo.ai/api/mcpClaude Desktop
In Claude Desktop, open Customize → Connectors, click the + icon, choose Add custom connector, then fill in:
- Name:
QuickSEO - Remote MCP server URL:
https://quickseo.ai/api/mcp - Click Add, then approve the OAuth prompt on first use.
Cursor
One-click install — opens Cursor and pre-fills the MCP server config.
Add to CursorOther MCP clients
For any MCP client that reads a JSON config (and doesn't yet support remote HTTP-transport servers natively), add this block to its config file. It uses mcp-remote as a local bridge.
{
"mcpServers": {
"quickseo": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://quickseo.ai/api/mcp"]
}
}
}The QuickSEO MCP server speaks OAuth 2.1 with Dynamic Client Registration and PKCE. Your MCP client registers itself the first time it connects, redirects you to the QuickSEO consent screen, and receives a short-lived bearer token bound to your user account.
You stay logged in via the QuickSEO browser session — there is no copy-pasting of API keys or personal access tokens. You can revoke any connection at any time from your account page.
list_sitesList all sites the authenticated QuickSEO user owns. Returns each site UUID, URL, brand name, GSC property, and whether the site is active. Call this first to discover the siteId values you pass to the other tools.
get_site_overviewReturn a combined overview for one site over the last 30 days: latest AI visibility scores (overall + per-model for ChatGPT, Claude, Gemini, Perplexity) and Google Search Console totals (clicks, impressions, CTR, average position).
get_search_analyticsFetch Google Search Console rows for a site over a date range. Use dimensions to break down the result; defaults to DATE. Example: dimensions=["QUERY","PAGE"] returns clicks/impressions/CTR/position grouped by query+page.
get_ai_visibilityReturn AI visibility scores for a site across the chosen period. Includes the full per-period series plus a latest summary (overall + ChatGPT, Claude, Gemini, Perplexity scores, total_prompts, mentioned_count). Requires a paid plan.
list_promptsList the AI prompts currently tracked for a site. These are the user-facing prompts that get run against ChatGPT, Claude, Gemini, and Perplexity for AI visibility scoring. Requires a paid plan.
add_promptAdd a new AI prompt to track for a site and trigger an immediate scan against ChatGPT, Claude, Gemini, and Perplexity. Subject to the user prompt-quota and requires a paid plan.
list_competitorsList competitor domains discovered (or manually tracked) for a site, with total citations, status, and first/last seen timestamps. Filter by status — tracked, suggested, or dismissed. Requires a paid plan.
Rate limit: 120 requests per minute per user, sliding 60-second window. When you exceed the limit the server responds with HTTP 429 and a Retry-After header.
Paid features: AI visibility scans, prompt management, and competitor tracking all require an active paid plan. Read tools that touch only Google Search Console data work on any plan.