Google AnalyticsGoogle Analytics MCP server

Google Analytics MCP Server for any AI client.

NotFair connects your Google Analytics 4 properties to Claude, Codex, Cursor, and any MCP client — 11 tools to explore traffic, conversions, and audience data in plain language.

View setup guide

No credit card required · Read live data, approve every write

Works with
Google Analytics MCP
Live

MCP endpoint

https://notfair.co/api/mcp/google_analytics
OAuth 2.0Streamable HTTP

Live tools

11

New to MCP? Read the spec at modelcontextprotocol.io.

Tools exposed

11Google Analytics tools your AI client can query

Read tools scoped to the GA4 properties you connect, plus approval-gated configuration management. Every write is proposed in chat and confirmed before it reaches Google.

ToolType
listPropertiesRead
runReportRead
runRealtimeReportRead
getMetadataRead
createCustomDimensionWrite
archiveCustomDimensionWrite
and more reporting and audience tools

Connect Google Analytics and try it in Claude

Authorize NotFair to access your GA4 properties, then add the MCP server to Claude. The first prompt to try: “Which traffic sources drove the most conversions in the last 28 days?”

Or open Claude Connectors directly

FAQ — Google Analytics MCP Server

Common questions about authenticating, configuring, and using the NotFair Google Analytics MCP server.

It's a remote MCP (Model Context Protocol) server at https://notfair.co/api/mcp/google_analytics that exposes your GA4 properties as a typed tool surface for AI agents. Claude Desktop, Claude.ai Web, Claude Cowork, Claude Code, and Codex can all connect to it and answer questions over live Google Analytics data — traffic sources, conversions, landing pages, and realtime activity.

Claude.ai's Add custom connector flow and Codex both use OAuth 2.0 with PKCE — there's no Client ID or Secret to copy. You authorize NotFair with Google once, pick which GA4 properties to expose, and the connection is scoped to those properties and revocable at any time.

The GA4 properties your Google account can access, Data API reports over any dimensions and metrics (sessions, users, conversions, revenue, traffic sources, pages, and more), realtime reports covering roughly the last 30 minutes, and the dimension/metric metadata for each property. Tokens are encrypted at rest and refreshed server-side.

Reporting is read-only and unrestricted. The only writes are configuration management — creating or archiving custom dimensions and creating or removing key events — and every write is approval-gated: the change is proposed in chat and you confirm before it reaches Google. The AI never touches your tracking code or your data.

Google splits the GA4 API in two: the Data API (reports, realtime, metadata) authorizes on analytics.readonly, while the Admin API writes NotFair exposes — custom dimensions and key events — require analytics.edit, which does not itself cover Data API reads. One grant requests both so reporting and the approval-gated configuration tools work from a single connection.

runRealtimeReport covers the present moment back to about 30 minutes. runReport reflects standard GA4 processing — today's rows are intraday and still changing, and high-cardinality or wide-range reports may be sampled (the response says so when they are). Dates are interpreted in the property's timezone.

From /connect/google_analytics you can revoke access at any time. That removes the stored credential and invalidates the Claude and Codex OAuth tokens issued for the connection. You can also revoke NotFair from your Google account permissions page.