MCP-Server für Google Analytics ausprobieren

Mit dem Google Analytics Model Context Protocol (MCP)-Server können Sie Ihre Google Analytics-Daten mit Large Language Models (LLMs) und KI-Agenten wie Gemini verbinden. Sie können den MCP-Server verwenden, um Berichte in natürlicher Sprache abzufragen, Property-Konfigurationen zu prüfen und benutzerdefinierte Analyse-Agents zu erstellen.

MCP-Server einrichten Auf GitHub ansehen Anleitung zur Einrichtung ansehen

Vorbereitung

Bevor Sie den Google Analytics-MCP-Server konfigurieren, müssen Sie die folgenden Anforderungen erfüllen:

  1. Python und einen Paket-Runner installieren:
  2. Aktivieren Sie die Google Analytics APIs in :

    • Erstellen Sie ein -Projekt oder wählen Sie eines aus.
    • Aktivieren Sie in Ihrem Projekt sowohl die Google Analytics Admin API (analyticsadmin.googleapis.com) als auch die Google Analytics Data API (analyticsdata.googleapis.com):

      gcloud services enable analyticsadmin.googleapis.com \
        analyticsdata.googleapis.com \
        --project=YOUR_PROJECT_ID
      
  3. Zugriff auf Google Analytics-Property gewähren:

Authentifizierung einrichten

Der Google Analytics-MCP-Server authentifiziert sich mit Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC) und dem Google Analytics-OAuth 2.0-Lesezugriffsbereich:

https://www.googleapis.com/auth/analytics.readonly

Sie können ADC entweder mit Ihrem Google-Nutzerkonto oder mit einem Dienstkonto konfigurieren.

Option 1: Mit Nutzeranmeldedaten authentifizieren

  1. gcloud CLI installieren und initialisieren
  2. Führen Sie gcloud auth application-default login mit den erforderlichen Bereichen aus:

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/cloud-platform"
    

    Wenn Sie eine heruntergeladene OAuth 2.0-Desktop- oder Webclient-Konfigurationsdatei verwenden (siehe OAuth-Clients verwalten), übergeben Sie --client-id-file:

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file=YOUR_CLIENT_JSON_FILE
    
  3. Wenn der Befehl ausgeführt wurde, kopieren Sie den in der Konsole ausgegebenen Pfad zu den Anmeldedaten (Credentials saved to file: [PATH_TO_CREDENTIALS_JSON]). Sie verwenden diesen Pfad in GOOGLE_APPLICATION_CREDENTIALS, wenn Sie Ihren MCP-Client konfigurieren.

Option 2: Mit einem Dienstkonto authentifizieren

So authentifizieren Sie sich mit einem Dienstkonto, das Lesezugriff auf Ihre Google Analytics-Property hat:

  • JSON-Schlüsseldatei des Dienstkontos: Legen Sie GOOGLE_APPLICATION_CREDENTIALS in Ihrer MCP-Clientkonfiguration auf den absoluten Pfad der JSON-Datei Ihres Dienstkontos fest.
  • Identitätsübernahme des Dienstkontos: Generieren Sie ADC-Anmeldedaten, indem Sie die Identität des Dienstkontos mit der gcloud CLI übernehmen:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/cloud-platform"
    

MCP-Client konfigurieren

Der Server wird auf PyPI als analytics-mcp veröffentlicht und stellt die Konsolenskripts analytics-mcp und google-analytics-mcp bereit.

Ersetzen Sie in den folgenden Konfigurationen:

  • PATH_TO_CREDENTIALS_JSON durch den absoluten Pfad zu Ihrer ADC- oder Dienstkonto-JSON-Datei.
  • YOUR_PROJECT_ID durch die Projekt-ID, für die Sie die Google Analytics APIs aktiviert haben.

Antigravity CLI und Antigravity IDE

  1. Installieren Sie die Antigravity CLI oder die Antigravity IDE.
  2. Fügen Sie den analytics-mcp-Server zu ~/.gemini/config/mcp_config.json (oder .agents/mcp_config.json in Ihrem Arbeitsbereich) hinzu:

    {
      "mcpServers": {
        "analytics-mcp": {
          "command": "pipx",
          "args": ["run", "analytics-mcp"],
          "env": {
            "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON",
            "GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID"
          }
        }
      }
    }
    
  3. Prüfen Sie, ob analytics-mcp verbunden ist:

    • Antigravity CLI: Führen Sie agy aus und geben Sie dann /mcp ein, um Ihre konfigurierten MCP-Server aufzurufen.
    • Antigravity IDE: Öffnen Sie die Einstellungen > Anpassungen > Installierte MCP-Server und klicken Sie auf Aktualisieren.

Claude für den Computer und Claude Code

Fügen Sie für Claude Desktop den Server Ihrer claude_desktop_config.json-Datei hinzu (~/Library/Application Support/Claude/claude_desktop_config.json unter macOS oder %APPDATA%\Claude\claude_desktop_config.json unter Windows):

{
  "mcpServers": {
    "analytics-mcp": {
      "command": "pipx",
      "args": ["run", "analytics-mcp"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON",
        "GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID"
      }
    }
  }
}

Registrieren Sie den Server für Claude Code mit dem Befehlszeilentool:

claude mcp add analytics-mcp \
  --scope user \
  -e GOOGLE_APPLICATION_CREDENTIALS="PATH_TO_CREDENTIALS_JSON" \
  -e GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID" \
  -- pipx run analytics-mcp

Cursor

Fügen Sie den Server in Ihrem Projektverzeichnis zu .cursor/mcp.json hinzu (oder zu ~/.cursor/mcp.json für die globale Konfiguration). Sie können google-analytics-mcp entweder mit uvx oder pipx aufrufen:

{
  "mcpServers": {
    "google-analytics-mcp": {
      "command": "uvx",
      "args": ["--from", "analytics-mcp", "google-analytics-mcp"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON",
        "GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID"
      }
    }
  }
}

Wenn Sie die neueste Entwicklungsversion mit uvx direkt von GitHub ausführen möchten, aktualisieren Sie "args":

"args": [
  "--from",
  "git+https://github.com/googleanalytics/google-analytics-mcp.git",
  "google-analytics-mcp"
]

Wenn Sie stattdessen pipx verwenden möchten, ändern Sie "command" in "pipx" und legen Sie "args" auf Folgendes fest:

"command": "pipx",
"args": [
  "run",
  "--spec",
  "git+https://github.com/googleanalytics/google-analytics-mcp.git",
  "google-analytics-mcp"
]

Verfügbare MCP-Tools

Der Google Analytics-MCP-Server verwendet die Admin API und die Data API v1, um Ihrem MCP-Client Tools mit Lesezugriff zur Verfügung zu stellen:

  • Konto- und Property-Erkennung (Admin API):
    • get_account_summaries: Listet die Google Analytics-Konten und -Properties auf, auf die der authentifizierte Nutzer zugreifen kann (accountSummaries.list).
    • get_property_details: Gibt Konfigurationsdetails für eine bestimmte Google Analytics-Property (properties.get) zurück.
    • list_google_ads_links: Listet Verknüpfungen mit Google Ads-Konten für eine Property auf (properties.googleAdsLinks.list).
    • list_property_annotations: Listet Annotationen auf, die für eine Property konfiguriert sind (properties.reportingDataAnnotations.list).
  • Berichterstellung und Schemaprüfung (Data API v1):
    • get_custom_dimensions_and_metrics: Ruft benutzerdefinierte Dimensionen und benutzerdefinierte Messwerte ab, die für eine Property (getMetadata) definiert sind.
    • run_report: Führt einen standardmäßigen Google Analytics-Bericht aus (runReport).
    • run_realtime_report: Führt einen Google Analytics-Echtzeitbericht aus (runRealtimeReport).
    • run_funnel_report: Führt einen Bericht zur explorativen Trichteranalyse in Google Analytics aus (runFunnelReport).
    • run_conversions_report: Führt einen Leistungsbericht für Conversions (runConversionsReport) aus.

Beispiel-Prompts

Nachdem die Verbindung hergestellt wurde, kannst du deinem KI-Assistenten Fragen stellen, wie zum Beispiel:

  • Wie viele Nutzer hatte ich gestern?
  • Was waren gestern meine Bestseller-Produkte?
  • Ich habe ein Marketingbudget von 5.000 € pro Monat und muss mehr Umsatz generieren. Hilf mir, einen datengestützten Marketingplan zu erstellen.
  • Welche benutzerdefinierten Dimensionen und Messwerte sind in meiner Property konfiguriert?
  • Welche Ereignisse waren in den letzten 90 Tagen in meiner Google Analytics-Property am beliebtesten?

Fehlerbehebung

Mit der folgenden Checkliste können Sie häufige Einrichtungs- und Laufzeitfehler beheben:

  • 403 PERMISSION_DENIED (API nicht aktiviert oder unzureichende Property-Berechtigungen):
    • Prüfen Sie, ob sowohl die Google Analytics Admin API (analyticsadmin.googleapis.com) als auch die Google Analytics Data API (analyticsdata.googleapis.com) im -Projekt aktiviert sind, das durch GOOGLE_CLOUD_PROJECT angegeben wird.
    • Prüfen Sie, ob der authentifizierende Nutzer oder das Dienstkonto mindestens die Rolle Betrachter (roles/analytics.viewer) für die Google Analytics-Ziel-Property in der Google Analytics-Benutzeroberfläche hat.
    • Wenn der Fehlerstatus Request had insufficient authentication scopes lautet, führen Sie gcloud auth application-default login noch einmal mit den Bereichen https://www.googleapis.com/auth/analytics.readonly und https://www.googleapis.com/auth/cloud-platform aus.
  • Fehlendes Kontingentprojekt (GOOGLE_CLOUD_PROJECT) oder 403 ACCESS_NOT_CONFIGURED:

    • Für Anfragen, die mit Standardanmeldedaten für Anwendungen authentifiziert wurden, ist ein -Kontingentprojekt mit aktivierten Google Analytics APIs erforderlich. Legen Sie "GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID" in der env-Konfiguration Ihres MCP-Servers fest oder legen Sie das Kontingentprojekt in Ihrer ADC-Datei fest:

      gcloud auth application-default set-quota-project YOUR_PROJECT_ID
      
  • 401 UNAUTHENTICATED oder Datei mit Anmeldedaten nicht gefunden:

    • Verwenden Sie für GOOGLE_APPLICATION_CREDENTIALS einen absoluten Pfad (z. B. /Users/username/.config/gcloud/application_default_credentials.json). Vermeiden Sie die Variablen ~ oder $HOME, da viele MCP-Hosts Shell-Variablen in JSON-Konfigurationsdateien nicht erweitern.
    • Führen Sie gcloud auth application-default login noch einmal aus, wenn Ihre Nutzeranmeldedaten abgelaufen sind.
  • Server kann nicht gestartet werden (spawn pipx ENOENT-, uvx: command not found- oder Python-Versionsfehler):

    • Prüfen Sie, ob Python 3.10 oder höher installiert ist (python3 --version).
    • Desktop-GUI-Anwendungen (wie Claude Desktop und Cursor) übernehmen oft nicht die PATH Ihrer interaktiven Shell. Ersetzen Sie "pipx" oder "uvx" in "command" durch den absoluten Binärpfad, der von which pipx oder which uvx zurückgegeben wird (z. B. /opt/homebrew/bin/pipx oder /Users/username/.local/bin/pipx).