siteline Start free trial Log in

MCP for Search Console and analytics in Cursor

See your data

Cursor is an editor with an agent. The agent can already see your templates. It cannot see Google Search Console unless you give it a server. SiteLine is that server: imported GSC plus cookieless on-site analytics, both MCP, both read-only.

This page is the Cursor wiring. The bearer-token notes for this client are in Cursor. Shared setup: SiteLine MCP setup for agents.

Add both servers

Create a token on Settings → MCP access. Cursor does not use the Claude.ai OAuth connector; it wants a bearer token. Paste two HTTP servers (Cursor’s MCP JSON uses type + url + headers — confirm against your version’s docs):

{
    "mcpServers": {
        "siteline": {
            "type": "http",
            "url": "https://siteline.tools/mcp/search-console",
            "headers": {
                "Authorization": "Bearer YOUR_TOKEN"
            }
        },
        "siteline-analytics": {
            "type": "http",
            "url": "https://siteline.tools/mcp/analytics",
            "headers": {
                "Authorization": "Bearer YOUR_TOKEN"
            }
        }
    }
}

Same token, two names. If you only add Search Console, the agent will invent on-site numbers. If you only add analytics, it will invent queries.

The token is tied to one team. It will not silently follow the site you have open in the SiteLine UI. list-sites / list-analytics-sites are the directory.

A Cursor-shaped workflow

Cursor’s advantage is the diff. Do not ask it for a strategy deck.

  1. “Using SiteLine Search Console, get-import-status then get-site-overview for the last 28 completed days. Then get-movers vs the prior 28. Do not average position.”
  2. Pick one losing URL that maps to a file in the repo.
  3. “Using SiteLine Analytics, breakdown page for that path on the same dates. Do not compare to clicks.”
  4. “Edit the heading / meta / internal links in this file. Do not request indexing.”

Put the coverage rules in Cursor’s project rules or user rules so every chat inherits them. The long form is how AI coding agents use SEO data.

What you will see in tool output

Search Console tools return data_from, data_through, import_status, and notes. Cursor will still ignore them unless the rule file says not to. Analytics tools note a billing visibility cap when Starter/Growth has hidden overflow.

Grok, Claude, and GPT inside Cursor all use the same MCP servers. The model changes. The footguns do not. If you came here because you run Grok in Cursor, this config is still the one you want; the Grok web app is a different client (Grok).

FAQ

Can Cursor write to Search Console through SiteLine?

No. webmasters.readonly. Revoke the token on MCP access if the machine should lose the data.

Why does Cursor say the MCP server failed?

Wrong URL (analytics vs Search Console), missing Accept headers on ancient clients, expired token, or a lapsed subscription. Curl from setup before blaming Cursor.

Do I need the @siteline.tools npm package for MCP?

No. That package is the browser tracker. MCP is HTTPS to siteline.tools.