GA4 MCP server for Claude, ChatGPT, Cursor and Codex
Run Google Analytics 4 reports in plain language. Connect GA4 once with a read-only Google sign-in, choose a property, and your assistant can pull traffic, engagement, conversions and realtime numbers — through the same MCP URL as your Search Console data.
- 5 read-only tools
- Core and realtime reports
- Same URL as Search Console
What you can ask
Plain-language questions, answered from live data. Each one shows the tools your assistant will call.
“Which landing pages brought the most new users from organic search last month?”
run_ga4_report“How many people are on the site right now, and which pages are they on?”
run_ga4_realtime_report“Compare key events by default channel group this month versus last month.”
run_ga4_report“What custom dimensions and metrics are set up on this property?”
get_ga4_metadata“Which pages get plenty of Search Console impressions but a low engagement rate in GA4?”
get_search_analyticsrun_ga4_report“Break down sessions and engagement rate by country and device for the last 7 days.”
run_ga4_report5 tools, all read-only
Core reports take any dimensions and metrics the GA4 Data API supports, including your custom definitions, over the date range you ask for.
list_ga4_properties- List the GA4 properties selected for this endpoint.
get_ga4_property_details- Name, time zone, currency and industry of a GA4 property.
run_ga4_report- Run a GA4 core report with dimensions, metrics and date ranges.
run_ga4_realtime_report- Run a GA4 realtime report for the last 30 minutes.
get_ga4_metadata- Dimensions and metrics available on a property, including custom ones.
Set it up in three steps
- 1
Connect Google Analytics
Open Services, choose Google Analytics 4 and approve read-only Analytics access. If Search Console is already connected, Google adds the new permission to the same connection.
- 2
Choose a property
Pick the GA4 property your endpoints may read. The free plan includes 1 property; on Pro, select as many as you like.
- 3
Create an endpoint and paste the URL
Add GA4 to an endpoint — ideally next to Search Console, so one conversation sees both — and paste the URL into your MCP client.
What it looks like
Real screens from the product. Account details are masked.


Add the endpoint to your client
Your dashboard shows these with your real URL filled in, ready to copy.
Claude Code
Terminalclaude mcp add --transport http kumomcp-seo https://mcp.kumomcp.com/u/YOUR-ENDPOINT-TOKEN/mcpAdd --scope user to make it available in every project, or --scope project to share it via .mcp.json.
Codex
Terminalcodex mcp add kumomcp-seo --url https://mcp.kumomcp.com/u/YOUR-ENDPOINT-TOKEN/mcpCursor
.cursor/mcp.json (project) or ~/.cursor/mcp.json (global){
"mcpServers": {
"kumomcp-seo": {
"url": "https://mcp.kumomcp.com/u/YOUR-ENDPOINT-TOKEN/mcp"
}
}
}Claude Desktop · Claude.ai · ChatGPT
Endpoint URLhttps://mcp.kumomcp.com/u/YOUR-ENDPOINT-TOKEN/mcpClaude Desktop and Claude.ai: Settings → Connectors → Add custom connector, paste the URL and leave the OAuth fields empty. ChatGPT: Settings → Connectors → Developer mode → Create, paste the URL, authentication: none.
Hosted vs. Google's google-analytics-mcp
Google's own server is open source and read-only — a good fit if you're comfortable with gcloud. Here's how the two compare:
| Aspect | google-analytics-mcp (self-hosted) | KumoMCP |
|---|---|---|
| Setup | Python 3.10+, pipx and the gcloud CLI; a Cloud project with the Analytics Admin and Data APIs enabled; Application Default Credentials | Sign in with Google in the browser |
| Runs on | A local process started by your agent | Our servers — nothing to install |
| Claude.ai and ChatGPT | Not supported: web clients can't launch local processes | Supported: it's a remote URL |
| Reports | Core, realtime and funnel reports, plus Google Ads links | Core and realtime reports, property details and metadata |
| Search Console | A separate server to install | Same endpoint, same URL |
Permissions and your data
- KumoMCP asks Google for one permission: analytics.readonly, which is read-only. Your assistant can't change Google Analytics settings through it.
- Your Google refresh token is encrypted with AES-256-GCM before it reaches our database. Disconnect from the dashboard or from your Google account's security page at any time.
- Google Analytics data is fetched when your assistant calls a tool and goes straight back to your MCP client. We don't keep a copy, and we never use it for advertising or model training.
- Our use of Google data follows the Google API Services User Data Policy, including the Limited Use requirements.
Google Analytics 4: common questions
Is this Google's official GA4 MCP server?
No. Google publishes google-analytics-mcp, which you install and run locally. KumoMCP is a separate hosted service that reads the same GA4 Data API with your read-only permission.
Which MCP clients does it work with?
Any client that can add a remote MCP server over Streamable HTTP: Claude Code, Claude Desktop, Claude.ai, ChatGPT (connectors in developer mode), Cursor and Codex. The endpoint URL is the credential, so there's no OAuth step in the client — paste the URL and you're done.
Does it support Universal Analytics?
No. Universal Analytics stopped processing data in 2023 (2024 for Analytics 360), so KumoMCP reads GA4 properties only.
Can I query more than one property?
The free plan includes 1 GA4 property. On Pro you can select several, and your assistant lists them and picks one by property ID.
How current is the realtime data?
Realtime reports cover the last 30 minutes, the same window as the Realtime report in the GA4 interface. Standard reports follow GA4's usual processing delay.
Is usage metered?
We never meter MCP calls on any plan. Google's GA4 Data API quotas still apply to each property.
Keep reading
Wire your MCP servers into your AI in 2 minutes
Free to start, no credit card, calls never metered. Your assistant is one URL away.
Start free