Serwer Model Context Protocol (MCP) Google Analytics umożliwia łączenie danych Google Analytics z dużymi modelami językowymi (LLM) i agentami AI, takimi jak Gemini. Możesz używać serwera MCP do wysyłania zapytań do raportów w języku naturalnym, sprawdzania konfiguracji usług i tworzenia niestandardowych agentów analitycznych.
Skonfiguruj serwer MCP Wyświetl na GitHubie Obejrzyj samouczek dotyczący konfiguracji
Wymagania wstępne
Zanim skonfigurujesz serwer MCP Google Analytics, spełnij te wymagania:
- Zainstaluj Pythona i program do uruchamiania pakietów:
- Zainstaluj Pythona w wersji 3.10 lub nowszej.
- Zainstaluj
pipxlubuv(uvx), aby uruchomić serwer MCP w odizolowanym środowisku Pythona.
Włącz interfejsy API Google Analytics w:
- Utwórz lub wybierz projekt.
Włącz w projekcie interfejsy Google Analytics Admin API (
analyticsadmin.googleapis.com) i Google Analytics Data API (analyticsdata.googleapis.com):gcloud services enable analyticsadmin.googleapis.com \ analyticsdata.googleapis.com \ --project=YOUR_PROJECT_ID
Przyznawanie dostępu do usługi w Google Analytics:
- W interfejsie Google Analytics przyznaj swojemu kontu użytkownika lub kontu usługi co najmniej rolę Przeglądający (
roles/analytics.viewer) w docelowej usłudze w Google Analytics. Instrukcje znajdziesz w artykule Zarządzanie dostępem i ograniczeniami dotyczącymi danych.
- W interfejsie Google Analytics przyznaj swojemu kontu użytkownika lub kontu usługi co najmniej rolę Przeglądający (
Konfigurowanie uwierzytelniania
Serwer MCP Google Analytics uwierzytelnia się za pomocą domyślnego uwierzytelniania aplikacji (ADC) z zakresem OAuth 2.0 Google Analytics tylko do odczytu:
https://www.googleapis.com/auth/analytics.readonly
ADC możesz skonfigurować za pomocą konta użytkownika Google lub konta usługi.
Opcja 1. Uwierzytelnianie za pomocą danych logowania użytkownika
- Zainstaluj i zainicjuj gcloud CLI.
Uruchom
gcloud auth application-default loginz wymaganymi zakresami:gcloud auth application-default login \ --scopes="https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/cloud-platform"Jeśli używasz pobranego pliku konfiguracji klienta OAuth 2.0 na komputerze lub w internecie (patrz Zarządzanie klientami OAuth), przekaż
--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_FILEPo zakończeniu wykonywania polecenia skopiuj ścieżkę danych logowania wyświetloną w konsoli (
Credentials saved to file: [PATH_TO_CREDENTIALS_JSON]). Użyjesz tej ścieżki wGOOGLE_APPLICATION_CREDENTIALSpodczas konfigurowania klienta MCP.
Opcja 2. Uwierzytelnianie przy użyciu konta usługi
Aby uwierzytelnić się za pomocą konta usługi, które ma uprawnienia przeglądającego do Twojej usługi w Google Analytics:
- Plik klucza JSON konta usługi: ustaw
GOOGLE_APPLICATION_CREDENTIALSw konfiguracji klienta MCP na ścieżkę bezwzględną pliku JSON konta usługi. Przyjęcie tożsamości konta usługi: wygeneruj dane logowania ADC, przyjmując tożsamość konta usługi za pomocą gcloud CLI:
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"
Konfigurowanie klienta MCP
Serwer jest opublikowany w PyPI jako analytics-mcp i udostępnia skrypty konsoli analytics-mcp i google-analytics-mcp.
W tych konfiguracjach zastąp:
PATH_TO_CREDENTIALS_JSONścieżką bezwzględną do pliku JSON domyślnych danych uwierzytelniających aplikacji lub konta usługi.YOUR_PROJECT_ID, podając identyfikator projektu, w którym zostały włączone interfejsy API Google Analytics.
Antigravity CLI i Antigravity IDE
- Zainstaluj Antigravity CLI lub Antigravity IDE.
Dodaj serwer
analytics-mcpdo~/.gemini/config/mcp_config.json(lub.agents/mcp_config.jsonw obszarze roboczym):{ "mcpServers": { "analytics-mcp": { "command": "pipx", "args": ["run", "analytics-mcp"], "env": { "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON", "GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID" } } } }Sprawdź, czy
analytics-mcpjest połączony:- Antigravity CLI: uruchom
agy, a następnie wpisz/mcp, aby wyświetlić skonfigurowane serwery MCP. - Antigravity IDE: otwórz Ustawienia > Dostosowania > Zainstalowane serwery MCP i kliknij Odśwież.
- Antigravity CLI: uruchom
Claude Desktop i Claude Code
W przypadku Claude Desktop dodaj serwer do pliku claude_desktop_config.json (~/Library/Application Support/Claude/claude_desktop_config.json na macOS lub %APPDATA%\Claude\claude_desktop_config.json na Windows):
{
"mcpServers": {
"analytics-mcp": {
"command": "pipx",
"args": ["run", "analytics-mcp"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON",
"GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID"
}
}
}
}
W przypadku Claude Code zarejestruj serwer za pomocą narzędzia wiersza poleceń:
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
Kursor
Dodaj serwer do pliku .cursor/mcp.json w katalogu projektu (lub ~/.cursor/mcp.json w przypadku konfiguracji globalnej). Możesz wywołać google-analytics-mcp za pomocą uvx lub pipx:
{
"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"
}
}
}
}
Aby uruchomić najnowszą wersję deweloperską bezpośrednio z GitHuba za pomocą uvx, zaktualizuj "args":
"args": [
"--from",
"git+https://github.com/googleanalytics/google-analytics-mcp.git",
"google-analytics-mcp"
]
Możesz też użyć pipx, zmieniając "command" na "pipx" i ustawiając "args" na:
"command": "pipx",
"args": [
"run",
"--spec",
"git+https://github.com/googleanalytics/google-analytics-mcp.git",
"google-analytics-mcp"
]
Dostępne narzędzia MCP
Serwer MCP Google Analytics używa interfejsów Admin API i Data API w wersji 1, aby udostępniać klientowi MCP narzędzia tylko do odczytu:
- Wykrywanie kont i usług (Admin API):
get_account_summaries: wyświetla listę kont i usług Google Analytics dostępnych dla uwierzytelnionego użytkownika (accountSummaries.list).get_property_details: zwraca szczegóły konfiguracji konkretnej usługi w Google Analytics (properties.get).list_google_ads_links: wyświetla listę połączeń z kontami Google Ads w przypadku danej usługi (properties.googleAdsLinks.list).list_property_annotations: wyświetla listę adnotacji skonfigurowanych dla usługi (properties.reportingDataAnnotations.list).
- Raportowanie i sprawdzanie schematu (Data API w wersji 1):
get_custom_dimensions_and_metrics: pobiera wymiary i dane niestandardowe zdefiniowane dla usługi (getMetadata).run_report: generuje standardowy raport Google Analytics (runReport).run_realtime_report: generuje raport Google Analytics pokazujący aktywność w czasie rzeczywistym (runRealtimeReport).run_funnel_report: generuje raport eksploracji ścieżki w Google Analytics (runFunnelReport).run_conversions_report: generuje raport skuteczności konwersji (runConversionsReport).
Przykładowe prompty
Po połączeniu spróbuj zadać asystentowi AI pytania, takie jak:
- Ilu było ogółem moich użytkowników wczoraj?
- Które z moich najchętniej kupowanych produktów sprzedawały się wczoraj najlepiej?
- Mam budżet marketingowy w wysokości 5000 USD miesięcznie i muszę zwiększyć przychody. Pomóż mi utworzyć plan marketingowy oparty na danych.
- Jakie wymiary i dane niestandardowe są skonfigurowane w mojej usłudze?
- Jakie są najpopularniejsze zdarzenia w mojej usłudze w Google Analytics w ciągu ostatnich 90 dni?
Rozwiązywanie problemów
Aby rozwiązać typowe błędy konfiguracji i środowiska wykonawczego, skorzystaj z tej listy kontrolnej:
403 PERMISSION_DENIED(interfejs API nie jest włączony lub uprawnienia do usługi są niewystarczające):- Sprawdź, czy interfejsy Google Analytics Admin API (
analyticsadmin.googleapis.com) i Google Analytics Data API (analyticsdata.googleapis.com) są włączone w projekcie określonym przezGOOGLE_CLOUD_PROJECT. - Sprawdź, czy uwierzytelniający użytkownik lub konto usługi ma co najmniej rolę Przeglądający (
roles/analytics.viewer) w docelowej usłudze w Google Analytics w interfejsie Google Analytics. - Jeśli stan błędu wskazuje
Request had insufficient authentication scopes, uruchom ponowniegcloud auth application-default loginz zakresamihttps://www.googleapis.com/auth/analytics.readonlyihttps://www.googleapis.com/auth/cloud-platform.
- Sprawdź, czy interfejsy Google Analytics Admin API (
Brak projektu z limitem (
GOOGLE_CLOUD_PROJECT) lub403 ACCESS_NOT_CONFIGURED:Żądania uwierzytelnione za pomocą danych logowania ADC użytkownika wymagają projektu z limitem z włączonymi interfejsami Google Analytics API. Ustaw
"GOOGLE_CLOUD_PROJECT": "YOUR_PROJECT_ID"w konfiguracjienvserwera MCP lub ustaw projekt rozliczeniowy w pliku ADC:gcloud auth application-default set-quota-project YOUR_PROJECT_ID
Nie znaleziono pliku
401 UNAUTHENTICATEDani pliku danych logowania:- Użyj ścieżki bezwzględnej dla
GOOGLE_APPLICATION_CREDENTIALS(np./Users/username/.config/gcloud/application_default_credentials.json). Unikaj zmiennych~lub$HOME, ponieważ wiele hostów MCP nie rozwija zmiennych powłoki w plikach konfiguracji JSON. - Jeśli Twoje dane logowania wygasły, ponownie uruchom
gcloud auth application-default login.
- Użyj ścieżki bezwzględnej dla
Nie udało się uruchomić serwera (błędy
spawn pipx ENOENT,uvx: command not foundlub błędy wersji Pythona):- Sprawdź, czy masz zainstalowanego Pythona w wersji 3.10 lub nowszej (
python3 --version). - Aplikacje GUI na komputery (takie jak Claude Desktop i Cursor) często nie dziedziczą interaktywnej powłoki
PATH. Zastąp"pipx"lub"uvx"w"command"bezwzględną ścieżką binarną zwróconą przezwhich pipxlubwhich uvx(np./opt/homebrew/bin/pipxlub/Users/username/.local/bin/pipx).
- Sprawdź, czy masz zainstalowanego Pythona w wersji 3.10 lub nowszej (