MCP Hub
Back to servers

Google Analytics 4

Manage GA4 properties, data streams, conversions, and run reports via Admin & Data APIs.

Updated
Feb 28, 2026

Quick Install

uvx google-analytics-4-mcp

Google Analytics 4 MCP Server

MCP server for Google Analytics 4 — create properties, configure data streams, manage conversions, and run reports via the Admin & Data APIs.

Setup (one-time, ~3 minutes)

  1. Google Cloud ConsoleIAM & Admin → Service Accounts

    • Create a service account (any name)
    • Click it → Keys → Add Key → JSON → Download
  2. Enable APIs in your GCP project:

  3. GA4 Admin → Property Access Management → Add the service account email (from the JSON) as Editor

  4. Configure credentials (pick one):

    • Option A (recommended): Copy the JSON content into the GA_CREDENTIALS env var in your MCP config
    • Option B: Save the file to ~/.google-analytics-4-mcp/credentials.json

Done. No browser flow, no consent screen, no tokens to refresh.

Installation

Claude Code

claude mcp add google-analytics -e GA_CREDENTIALS='{"type":"service_account",...}' -- uvx google-analytics-4-mcp

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "google-analytics": {
      "command": "uvx",
      "args": ["google-analytics-4-mcp"],
      "env": {
        "GA_CREDENTIALS": "{\"type\":\"service_account\",\"project_id\":\"...\", ...}"
      }
    }
  }
}

From source

git clone https://github.com/stucchi/mcp-google-analytics.git
cd mcp-google-analytics
uv run google-analytics-4-mcp

Getting Started

  1. Check auth: Call check_auth_status to verify the service account is configured
  2. List accounts: Call list_accounts to see your GA4 accounts
  3. Setup a property: Use create_propertycreate_web_data_streamget_tracking_snippet
  4. Query data: Use run_report with dimensions and metrics

Tools (23)

Auth

ToolDescription
check_auth_statusVerify service account is configured and valid

Admin API

ToolDescription
list_accountsList accessible GA4 accounts
list_propertiesList properties for an account
create_propertyCreate a GA4 property
get_propertyGet property details
delete_propertySoft-delete a property
list_data_streamsList data streams
create_web_data_streamCreate web stream → get Measurement ID
delete_data_streamDelete a data stream
get_tracking_snippetGenerate gtag.js HTML snippet
list_key_eventsList conversion events
create_key_eventMark event as conversion
delete_key_eventRemove conversion
list_custom_dimensionsList custom dimensions
create_custom_dimensionCreate custom dimension
list_custom_metricsList custom metrics
create_custom_metricCreate custom metric
list_google_ads_linksList Google Ads links
create_google_ads_linkLink Google Ads account
get_measurement_protocol_secretGet/create Measurement Protocol secret

Data API

ToolDescription
run_reportRun report with dimensions, metrics, dates, filters
run_realtime_reportReal-time active users and events
get_metadataList available dimensions and metrics

Environment Variables

VariableDefaultDescription
GA_CREDENTIALSService Account JSON key content (copy-paste the entire JSON)
GA_CREDENTIALS_PATH~/.google-analytics-4-mcp/credentials.jsonAlternative: path to the JSON key file

GA_CREDENTIALS takes priority over GA_CREDENTIALS_PATH.

Example Usage

You: "Set up Google Analytics for my website https://mcpadvisor.stucchi.consulting"

Assistant calls: list_accounts → create_property → create_web_data_stream → get_tracking_snippet

Result: Property created with Measurement ID G-XXXXXXXXXX and ready-to-paste HTML snippet.
You: "Show me the top 10 countries by sessions in the last 7 days"

Assistant calls: run_report(property_id="...", dimensions=["country"], metrics=["sessions"], start_date="7daysAgo", limit=10)

License

MIT

Reviews

No reviews yet

Sign in to write a review