Sprites MCP · Google Analytics MCP server · Cursor

Google Analytics MCP for Cursor: setup in two minutes

Add https://mcp.sprites.ai/mcp as a custom MCP connector in Cursor, sign in to Sprites, and Cursor can read your Google Analytics 4 account and propose changes to it. Setup takes about two minutes and needs no API key. Every write comes back as an approval before it touches the account.

MCP server URLhttps://mcp.sprites.ai/mcp

5 steps · about 2 minutes

CursorSprites connected

What happened to conversions last week?

Spritesanalyzerunning
SpritesGA4Needs your approval
  • Organic search412 → 402 convFlat−2%
  • Paid search308 → 141 convCause−54%
  • Direct96 → 101 convFlat+5%
Paid search accounts for 94% of the dropDig in

Add Sprites to Cursor

Available on Any Cursor plan that allows MCP servers, on desktop and on Cursor web agents. You need a Sprites account with Google Analytics 4 already connected — the connector acts on that connection, so Cursor never handles a GA4 credential.

  1. Write the config

    Put the entry in ~/.cursor/mcp.json to have Sprites available in every project, or in .cursor/mcp.json inside one repo to scope it there.

    ~/.cursor/mcp.json
    {
      "mcpServers": {
        "sprites": {
          "url": "https://mcp.sprites.ai/mcp"
        }
      }
    }
  2. Or add it from the UI

    Cursor lists MCP servers under Customize in the sidebar; adding one there writes the same file.

    Cursor
    CustomizeMCPNew MCP server
  3. Sign in

    Cursor finds the Sprites authorization server from the endpoint's protected-resource metadata, registers itself, and opens a browser for the consent screen. Desktop completes on http://localhost:8787/callback and web agents on cursor.com; both are pre-registered, so there is nothing to allowlist.

    Spriteswants access on behalf of Cursor
    • Read your connected ad accounts and site data
    • Draft campaigns, creatives and pages for your approval
    • Apply only the changes you approve
    AllowCancel
  4. Keep it in the repo, not in your dotfiles

    A project-scoped .cursor/mcp.json is worth committing: every teammate who opens the repo gets the same connector and signs in as themselves. The file holds a URL and nothing else — the token is per person and never touches the config.

Run the first prompt

Ask Cursor this. It routes to a Sprites door, which reads your Google Analytics 4 account and answers — no account to name, no confirmation to give first.

  • With Sprites, what happened to conversions last week and which channel caused it?
  • Ask Sprites for our top 10 landing pages by conversion rate this month.
  • Use Sprites to compare organic and paid revenue quarter over quarter in GA4.
  • Have Sprites break down ecommerce revenue by product for the last 30 days.
  • With Sprites, set up a Monday brief on traffic, conversions and the biggest change.

Open Cursor Settings → MCP and confirm sprites is listed as connected with its tool count.

What Cursor can do with Google Analytics 4

The same doors, whichever client you are in. The campaign and the page it points at live in the same window: change the pricing copy, then have Sprites update the ads that quote it, without a second tool.

Ask in English, get the report run

No explorations, no dimension picker. The question becomes a GA4 query and the answer comes back with the numbers attached.

Channel attribution that names a cause

The channel that accounts for the change, with its share of it stated, not a chart of everything that moved.

Item-scoped ecommerce

Revenue and units per product, not just per session — the breakdown GA4 buries.

Landing pages that earn and landing pages that leak

Entry page performance against conversions, ranked, with the drop-off stated.

Join it to the ad accounts

Because the same connector reads Google Ads and Meta, a GA4 answer can be checked against what the platforms claim.

A standing weekly read

A scheduled brief that runs against GA4 and messages you only when a number breaks trend.

How approvals work here

Cursor renders tool results as text, so a GA4 change comes back written out rather than as a card. The approval waits for you in Sprites — open it there and the same run continues. Nothing is applied until you approve it.

What it reads

  • Sessions, users, engagement and conversions by any GA4 dimension
  • Channel, source, medium and campaign attribution
  • Landing pages, events and funnels
  • Item-scoped ecommerce: revenue and units per product

What it can change

  • Nothing. GA4 is read-only through this connector by design
  • Changes it recommends land on the ad or SEO channel they belong to, each with its own approval

When it does not work in Cursor

Three things go wrong in this client specifically, and each has a one-line fix.

The Connect button does nothing and no request is made.

A known Cursor issue on some builds. Update Cursor, then remove and re-add the server; if it persists, restart Cursor with the config already in place so the connection is made at startup.

Cursor authenticates but every call comes back unauthorized.

The token was issued for a different address. Delete the server entry, restart Cursor, and re-add it with the exact endpoint above — every grant is bound to that one URL, so a variant of it will not be honoured.

The agent invents ad-platform tools instead of calling Sprites.

Name it: "use Sprites to…". Cursor ranks its own tools first, and a generic phrasing loses to the built-in search.

Google Analytics 4 and Cursor: questions

Which URL do I paste into Cursor?

https://mcp.sprites.ai/mcp. There is one endpoint and every client uses it — every OAuth grant is bound to exactly that address, so a variant of it will not be honoured.

Can Cursor change my Google Analytics 4 account without asking?

Cursor renders tool results as text, so a GA4 change comes back written out rather than as a card. The approval waits for you in Sprites — open it there and the same run continues. Nothing is applied until you approve it.

Do I need a Google Analytics 4 API key or developer token?

No. Google Analytics 4 is connected once inside Sprites through Google Analytics 4, and the connector acts on that connection. Cursor never sees a credential for it.

Why Cursor for Google Analytics 4 specifically?

The campaign and the page it points at live in the same window: change the pricing copy, then have Sprites update the ads that quote it, without a second tool.

Can it change anything in GA4?

No. GA4 is read-only through this connector on purpose. If the answer implies a change, it is proposed on the channel that owns it — an ad account, a page — with its own approval.

Do I need to know GA4 dimensions and metrics?

No. You ask the question; Sprites picks the dimensions, runs the report and states what it queried so you can check the working.

Keep going

The same Cursor connector reaches every other channel — nothing else to add.

All GA4 guides

Google Analytics 4, from Cursor

Paste one URL, sign in once, and the next GA4 question you ask Cursor gets answered from the live account.