mcpbeat

Google Analytics (unofficial) MCP Server

com.safe-mcp/google-analytics-unofficial
answering

Google Analytics (unofficial) is answering right now. Last checked 3 min ago. It exposes 5 tools.

Connect Google Analytics to ChatGPT. Query GA4 data in plain English and get instant insights.

Uptime history 39 hours of history
39 hours agonow
100.0%
Uptime 24h
91 of 91 checks
5
Tools
read from the server
269 ms
Response time
average over 24h
open, no key
Access
streamable-http

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 3 min ago.

run in your terminal
claude mcp add google-analytics-unofficial --transport http https://api.safe-mcp.com/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "google-analytics-unofficial": {
      "url": "https://api.safe-mcp.com/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.google-analytics-unofficial]
url = "https://api.safe-mcp.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "google-analytics-unofficial": {
      "url": "https://api.safe-mcp.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "google-analytics-unofficial": {
      "url": "https://api.safe-mcp.com/mcp"
    }
  }
}

Available tools 5

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

marketing
marketing_get_catalog
Use this when the user wants to discover the canonical marketing reporting graph, available sources, supported metrics, supported dimensions, or which connectors are live today. Each source also reports a `passthrough` field describing whether native fields beyond the curated list are accepted (GA4 accepts any native dimension/metric; Search Console accepts any native dimension; Bing is limited to the curated fields). Do not use this for GA4 account discovery or data retrieval.
marketing_get_funnel
Use for ordered conversion-step analysis: GA4 ordered_steps step funnels (e.g. session_start → add_to_cart → purchase) and cross-source holistic_bundle landing-page funnels joining GA4, Google Search Console, and Bing Webmaster. Covers funnel drop-off between steps (e.g. from landing on the site to adding to cart to purchasing), conversion paths, and acquisition-to-conversion context. Pass one date range for a single window or two date ranges for period-over-period comparison.
marketing_get_report
Primary reporting tool for a given GA4 property or site. Use for totals, trends, and breakdowns by dimension across GA4 website traffic and app analytics, Google Search Console site traffic, and Bing Webmaster — including last-30-days summaries, revenue, leads, sessions, users, engagement/time-on-page (average_session_duration, user_engagement_duration), and period-over-period comparisons. Drill deep: GA4 supports up to 9 grouped dimensions (date/hour, geo, device/browser/OS, source/medium/channel, landing_page/page_path, etc.). Defaults to all mapped connected sources merged into one standardized view, aligned on the shared grain (typically landing_page) so a page row blends GA4 sessions+engagement with Search Console/Bing clicks/impressions/CTR/position; per-source detail (e.g. full query lists) stays in sourceSections. Note GA4 has no `query` dimension and Search Console/Bing have no sessions/engagement, so those cannot share one row — query is a Search Console/Bing breakdown. Narrow with sources or sourceMode='single'. Any GA4 dimension/metric name not in the catalog is passed through to the GA4 API automatically; metricMode='source_native' forces a pure GA4-native report. Pass one date range for a single window or two date ranges for period-over-period comparison.
marketing_get_sources
Lists connected and missing GA4, Google Analytics properties, property IDs, web streams, app streams, measurement IDs, Firebase app IDs, Google Search Console sites, Bing Webmaster sites, and current analysis surface mappings. Use this before reporting when property/site selectors are unknown.
marketing_manage_surface
Gets or updates persisted selectors for a website/app analysis surface. Use action='get' to inspect mappings and action='update' to persist GA4, Search Console, or Bing Webmaster selectors.

Endpoints

URLTransportStateLatencyChecked
https://api.safe-mcp.com/mcp streamable-http answering 273 ms 3 min ago

Google Analytics (unofficial) — questions

Answers built from our own checks of this server.

What can Google Analytics (unofficial) do?
It exposes 5 tools, read directly from the server on our last check. Among them: marketing_get_catalog, marketing_get_funnel, marketing_get_report, marketing_get_sources, marketing_manage_surface. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Google Analytics (unofficial) working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 269 ms. The bar chart above shows every period we have measured.
How do I connect Google Analytics (unofficial)?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Google Analytics (unofficial) need an API key?
No. Google Analytics (unofficial) completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 5 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Google Analytics (unofficial)?
It answers our handshake in 269 ms on average, which is faster than 50% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.