Google Analytics MCP Server

Google Analytics MCP Server

By ruchernchong GitHub

Model Context Protocol server for Google Analytics, enabling LLMs to fetch and analyze web analytics data

Overview

what is Google Analytics MCP Server?

Google Analytics MCP Server is an implementation of the Model Context Protocol that allows users to access and analyze data from Google Analytics 4 (GA4) using a TypeScript SDK.

how to use Google Analytics MCP Server?

To use the server, set up a Google Cloud project, enable the Analytics Data API, create a service account, and configure it with the required environment variables. Start the server and integrate it with your Claude Desktop configuration.

key features of Google Analytics MCP Server?

  • Fetch customizable page view metrics
  • Track active and new users over time
  • Analyze specific events and their metrics
  • Monitor user behavior metrics, such as session duration and bounce rate
  • Flexible date range selection for all queries

use cases of Google Analytics MCP Server?

  1. Analyzing user engagement on a website over a specified period.
  2. Monitoring specific events, such as purchases and user sign-ups.
  3. Gathering insights into user acquisition and retention metrics.

FAQ from Google Analytics MCP Server?

  • What are the prerequisites for using this server?

You need Node.js 20 or higher, a Google Analytics 4 property, and credentials from a Google Cloud project with the Analytics Data API enabled.

  • Is there a specific configuration needed for Claude Desktop?

Yes, you'll need to add specific environment variables and configuration settings into the Claude Desktop setup to run the server.

  • Can I customize the metrics I want to retrieve?

Yes, you can customize the dimensions and metrics according to your analytics needs.

Content

Google Analytics MCP Server

smithery badge

An MCP server implementation for accessing Google Analytics 4 (GA4) data, built using the Model Context Protocol TypeScript SDK.

Features

  • Get page view metrics with customizable dimensions
  • Track active and new users over time
  • Analyze specific events and their metrics
  • Monitor user behavior metrics (session duration, bounce rate)
  • Flexible date range selection for all queries

Prerequisites

  • Node.js 20 or higher
  • Google Analytics 4 property
  • Google Cloud project with Analytics Data API enabled
  • Service account credentials with appropriate permissions

Setup

  1. Create a Google Cloud project and enable the Analytics Data API
  2. Create a service account and download the credentials JSON file
  3. Grant the service account appropriate access to your GA4 property
  4. Set up environment variables:
export GOOGLE_CLIENT_EMAIL="your-service-account@project.iam.gserviceaccount.com"
export GOOGLE_PRIVATE_KEY="your-private-key"
export GA_PROPERTY_ID="your-ga4-property-id"

Installation

Installing via Smithery

To install Google Analytics Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install mcp-server-google-analytics --client claude

Manual Installation

pnpm install mcp-server-google-analytics

Usage

Starting the Server

pnpm start

Configuration in Claude Desktop

Add this to your Claude Desktop configuration:

{
  "mcpServers": {
    "google-analytics": {
      "command": "npx",
      "args": ["-y", "mcp-server-google-analytics"],
      "env": {
        "GOOGLE_CLIENT_EMAIL": "your-service-account@project.iam.gserviceaccount.com",
        "GOOGLE_PRIVATE_KEY": "your-private-key",
        "GA_PROPERTY_ID": "your-ga4-property-id"
      }
    }
  }
}

Available Functions

getPageViews

Get page view metrics for a specific date range:

{
  "startDate": "2024-01-01",
  "endDate": "2024-01-31",
  "dimensions": ["page", "country"] // Optional
}

getActiveUsers

Get active users metrics:

{
  "startDate": "2024-01-01",
  "endDate": "2024-01-31"
}

getEvents

Get event metrics:

{
  "startDate": "2024-01-01",
  "endDate": "2024-01-31",
  "eventName": "purchase" // Optional
}

getUserBehavior

Get user behavior metrics:

{
  "startDate": "2024-01-01",
  "endDate": "2024-01-31"
}

Security Considerations

  • Always use environment variables for sensitive credentials
  • Implement appropriate CORS settings
  • Follow the principle of least privilege when setting up service account permissions
  • Regularly rotate service account credentials
  • Monitor API usage and implement rate limiting if needed

Contributing

Contributions are welcome! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

No tools information available.
No content found.