A laptop showing Google Analytics traffic dashboards, linked by a connector to a friendly AI assistant

Google Analytics MCP: Official, Local, and Read-Only

Yes — Google Analytics has an official MCP server, published by Google itself at github.com/googleanalytics/google-analytics-mcp. It’s real, it’s maintained, and it lets Gemini, Claude, and other MCP-compatible tools read your GA4 data. The catch: Google labels it “Experimental,” it only runs locally on your own machine, and it’s read-only.

The bigger thing worth knowing before you set it up: an MCP server hands your Analytics data to an AI inside a conversation you start. It’s a doorway, not a worker. Nothing watches your traffic for you, nothing fires when conversions drop, and nothing runs while the chat is closed. Here’s exactly what the Google Analytics MCP does, how to turn it on, where it stops — and what to use when you want GA work that runs on its own.

Looking beyond Google Analytics? MCP servers by category covers the rest.


What the Google Analytics MCP server does

Model Context Protocol (MCP) is the open standard that lets an AI client — Gemini, Claude, Cursor, and others — talk to an outside app through a shared interface. Google’s official server wraps the Google Analytics Admin API and Data API into a set of tools an AI can call:

  • get_account_summaries / get_property_details — pull up which GA4 accounts and properties you have access to.
  • run_report / run_funnel_report — run standard traffic and conversion-funnel reports against real data, not a guess.
  • get_custom_dimensions_and_metrics — surface the custom dimensions and metrics your property tracks.
  • run_realtime_report — check who’s on the site right now.
  • list_google_ads_links — see which Google Ads accounts are linked to a property.

With it connected, you can ask an AI client things like “how did organic traffic trend last month” or “where’s the drop-off in our checkout funnel” and get an answer grounded in your actual GA4 property. It’s genuinely useful for ad-hoc analysis. One limit worth flagging up front: the server is read-only — it can query your data but can’t edit your Google Analytics configuration or settings.

How to set up the Google Analytics MCP server

Unlike some vendors’ MCP servers, this one isn’t a “click authorize” remote connection — it’s a local server you run yourself:

  1. Install pipx to manage the Python package.
  2. Enable two APIs in a Google Cloud project: the Google Analytics Admin API and the Google Analytics Data API.
  3. Set up Application Default Credentials (ADC) — create an OAuth client and authenticate with the analytics.readonly scope, scoped to a user with access to your GA properties.
  4. Point your AI client at it — add pipx run analytics-mcp as an MCP server in Gemini CLI, Gemini Code Assist, Claude Desktop, or another MCP-compatible client’s config.
  5. Ask it a question — once the tools show up in your client, start a chat and query your Analytics data directly.

Google’s own README calls this “Experimental,” and the setup — a Google Cloud project, two enabled APIs, an OAuth client, and a Python package running locally — is a real technical lift. There’s no non-technical, no-code path through the official server today.

Where the Google Analytics MCP stops

None of this is a knock on MCP — it’s just the shape of the protocol, plus this particular server’s experimental, read-only design. Four limits show up the moment you want more than a one-off query:

  • It only works inside a chat you start. Close the window and nothing happens. The AI doesn’t watch your GA4 property; it waits for you to ask.
  • No triggers. A conversion rate dropping, traffic spiking from a new campaign, a funnel step suddenly leaking users — none of these can start anything through MCP. There’s no “when this happens in GA4, do that.”
  • It’s one app at a time. The Google Analytics MCP knows Google Analytics. Getting a traffic anomaly into Slack, a weekly summary into a Google Sheet, or a comparison against Google Ads spend means wiring up and authing separate MCP servers, then hoping your client can juggle them in one turn.
  • You own the plumbing. A Google Cloud project, two enabled APIs, OAuth credentials, and a locally-running Python process are all on you — and Google itself flags the server as experimental, not a finished product.

So the Google Analytics MCP is a solid way to ask your Analytics data things in a chat. It is not a way to make GA reporting run — to have work happen on a schedule or in reaction to a real traffic event, across the other tools that reporting touches.

Running Google Analytics work that doesn’t need a chat open

That “run on its own, across apps” gap is exactly where Carly fits. Carly connects to Google Analytics natively — no Python package to run, no Google Cloud project to configure, no OAuth client to manage — and to the ~260 other apps it supports, plus anything with a public API through your own key. The difference from MCP is the important part: Carly’s workflows are triggered and scheduled, so GA reporting happens whether or not anyone has a chat window open.

A few things that MCP can’t do but a Carly workflow can:

  • Every Monday morning → pull last week’s traffic and conversion numbers from Google Analytics, summarize them in plain language, and send the report to the team over Slack or email.
  • When conversion rate drops more than 15% day-over-day → alert the growth channel immediately and draft a note flagging which pages or campaigns changed.
  • When a new campaign starts sending traffic → cross-reference GA4 sessions against Google Ads spend, log the blended numbers to a Sheet, and notify whoever owns the budget.

The non-AI steps — the moving, matching, and routing between apps — are free and unlimited, the Zapier-style backbone of the workflow. The AI steps (drafting, summarizing, deciding) start at $35/month. You describe the outcome in plain language and Carly wires up the Google Analytics connection and everything downstream.

If you just want to interrogate your GA4 data from a chat, Google’s own MCP server is the right tool, and it’s free and open source. If you want Analytics work to actually happen — on a trigger, on a schedule, across every app a traffic report touches — that’s the job MCP wasn’t built for, and it’s the one Carly was.

FAQ

Does Google Analytics have an official MCP server? Yes. Google publishes it at github.com/googleanalytics/google-analytics-mcp, under an Apache 2.0 license. It’s labeled “Experimental” and gives read-only access to GA4 data through the Admin and Data APIs.

Is the Google Analytics MCP server free? The server itself is free and open source. You still need a Google Cloud project with the Analytics APIs enabled and your own GA4 access — no separate license fee, but real setup time.

Can the Google Analytics MCP server trigger alerts when traffic changes? No. MCP is request/response inside an AI chat — it has no triggers and nothing runs when the conversation is closed. For event- or schedule-driven Analytics work across apps, you need a workflow tool like Carly rather than an MCP server.

Can I connect Google Analytics to AI without coding or hosting a server? Yes. You don’t have to touch MCP, Python, or a Google Cloud project at all. Carly connects to Google Analytics for you and lets you build the automation in plain language — describe what you want to happen and it wires up the GA connection and the other apps involved, with nothing to run locally and no code to write.

Ready to automate your busywork?

Carly schedules, researches, and briefs you—so you can focus on what matters.

See what people say

"Before Carly, I relied on a Calendly link, but the whole process felt impersonal and not very professional. Carly changed that by handling all the back-and-forth, so I'm no longer stuck in endless email threads trying to line up schedules.

Now Carly reaches out to candidates, shares my real-time availability, lets them pick a slot, then sends a Zoom link and drops it straight into my calendar. She sends reminders to both of us before each call, which has significantly reduced no-shows and last-minute confusion.

On top of scheduling, Carly acts like a full executive assistant, sending me my schedule the night before so I can prepare for each call. It reminds me of the old x.ai assistant, but Carly is noticeably smarter, faster, and better suited to my healthcare recruitment business."

Gus Ibrahim, Founder & Director, IHR