Skip to main content

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 Console → IAM & 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_property → create_web_data_stream → get_tracking_snippet
  4. Query data: Use run_report with dimensions and metrics

Tools (23)

Auth

Tool Description
check_auth_status Verify service account is configured and valid

Admin API

Tool Description
list_accounts List accessible GA4 accounts
list_properties List properties for an account
create_property Create a GA4 property
get_property Get property details
delete_property Soft-delete a property
list_data_streams List data streams
create_web_data_stream Create web stream → get Measurement ID
delete_data_stream Delete a data stream
get_tracking_snippet Generate gtag.js HTML snippet
list_key_events List conversion events
create_key_event Mark event as conversion
delete_key_event Remove conversion
list_custom_dimensions List custom dimensions
create_custom_dimension Create custom dimension
list_custom_metrics List custom metrics
create_custom_metric Create custom metric
list_google_ads_links List Google Ads links
create_google_ads_link Link Google Ads account
get_measurement_protocol_secret Get/create Measurement Protocol secret

Data API

Tool Description
run_report Run report with dimensions, metrics, dates, filters
run_realtime_report Real-time active users and events
get_metadata List available dimensions and metrics

Environment Variables

Variable Default Description
GA_CREDENTIALS — Service Account JSON key content (copy-paste the entire JSON)
GA_CREDENTIALS_PATH ~/.google-analytics-4-mcp/credentials.json Alternative: 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

Metadata

Release files for google-analytics-4-mcp 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for google-analytics-4-mcp 0.1.1
File Size Uploaded
google_analytics_4_mcp-0.1.1.tar.gz 10.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for google-analytics-4-mcp 0.1.1
File Interpreter ABI Platform
google_analytics_4_mcp-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 24.1 kB

Release files / google_analytics_4_mcp-0.1.1.tar.gz

Download URL google_analytics_4_mcp-0.1.1.tar.gz
Size 10.5 kB
Tags Source
SHA-256 checksum
How to use checksums
5f187f57ab3865109d74bb621f0c292dd104b09d15c74b788867b26dae230efd
BLAKE2b-256 checksum
How to use checksums
ab45331a128ec44e9f8797a0bb51616cb3f5cca0e768f07b35ae78656bdd49de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.1

Release files / google_analytics_4_mcp-0.1.1-py3-none-any.whl

Download URL google_analytics_4_mcp-0.1.1-py3-none-any.whl
Size 13.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
de0de5f56a0fd442f6493b1eec6618007b3ce2ef5ee07b2c55254bd828c29c7e
BLAKE2b-256 checksum
How to use checksums
4eb67576fb070c5a6399efea0605dd5bd78de7810a9eb8c3613fb079f300c080
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.1

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page