Google Ads MCP
Google Ads MCP
Google Ads MCP ist ein lokaler, sicherheitsorientierter, schreibgeschützter MCP-Server und ein Codex-Plugin zum Untersuchen von Google-Ads-Konten. Version 0.1.0 stellt begrenzte Tools für Inventar, Berichte, Metadaten, Änderungsverlauf und sicheres GAQL bereit. Es enthält keine Schreib-, Upload-, Planungs-, Lösch-, Optimierungs- oder gehosteten Transportfunktionen.
Die öffentliche Python-Distribution heißt google-ads-operator-mcp. Produkt und Befehl bleiben Google Ads MCP und google-ads-mcp.
Sicherheitsgrenze
Jede kontobezogene Anfrage nennt sowohl ein Profil als auch eine Kunden-ID.
Google-Anmeldedaten bleiben in Application Default Credentials oder in einer expliziten, nur für den Eigentümer zugänglichen
google-ads.yamlaußerhalb des Repositorys.accounts.jsondarf nur einen Umgebungsvariablennamen für das Entwickler-Token enthalten, niemals das Token selbst.allowWritesmussfalsesein; jeder andere Wert wird abgelehnt.Nur
GoogleAdsService,CustomerServiceundGoogleAdsFieldServicewerden vom Produktionsadapter instanziiert.Ein Tool erhält normalisierte Zeilen, niemals einen Google-Client oder einen rohen Antwortumschlag.
Im MCP-Modus ist stdout für JSON-RPC reserviert. Diagnosen und bereinigte Fehlercodes gehen an stderr.
Lesen Sie SECURITY.md, PRIVACY.md und das Bedrohungsmodell, bevor Sie ein Produktionskonto verbinden.
Related MCP server: merchant-center-mcp
Anforderungen
Python 3.11, 3.12 oder 3.13
Zugriff auf die Google Ads API mit einem Entwickler-Token
ADC oder eine separat gespeicherte, nur für den Eigentümer zugängliche
google-ads.yaml
Verwenden Sie die offizielle Anleitung von Google für das Entwickler-Token, die Python-Client-Konfiguration und Application Default Credentials.
Lokale Einrichtung
uv sync --frozen --all-groups
uv run --frozen google-ads-mcp version
uv run --frozen google-ads-mcp config initNach der öffentlichen Veröffentlichung kann die eigenständige CLI auch mit uv tool install google-ads-operator-mcp==0.1.0 installiert werden. Verwenden Sie für das abschließende Abnahme-Gate für das saubere Plugin das Release-Plugin-Archiv und nicht eine Kopie des Quellbaums.
Bearbeiten Sie ~/.config/google-ads-mcp/accounts.json, ersetzen Sie die öffentlichen Konto-IDs und stellen Sie dann die nur für den Eigentümer zugänglichen Berechtigungen wieder her:
Machen Sie GOOGLE_ADS_DEVELOPER_TOKEN aus Ihrem lokalen Secret-Manager verfügbar, ohne seinen Wert im Repository oder im Chat zu hinterlegen, und führen Sie dann aus:
chmod 600 ~/.config/google-ads-mcp/accounts.json
gcloud auth application-default login
uv run --frozen google-ads-mcp config validate
uv run --frozen google-ads-mcp auth doctor --profile production-read-onlyFügen Sie das Entwickler-Token, das OAuth-Refresh-Token, das Client-Secret, ADC-JSON oder YAML-Inhalte nicht in dieses Repository, in ein Issue, in ein Terminalprotokoll oder in einen Chat ein.
Konfiguration
Die Konfigurationsreihenfolge ist --config, dann GOOGLE_ADS_MCP_CONFIG, dann ~/.config/google-ads-mcp/accounts.json.
{
"profiles": [
{
"name": "production-read-only",
"loginCustomerId": "1234567890",
"defaultCustomerId": "0987654321",
"auth": {
"type": "adc",
"developerTokenEnv": "GOOGLE_ADS_DEVELOPER_TOKEN"
},
"allowWrites": false
}
]
}Für ein vorhandenes Google-Client-YAML verwenden Sie {"type":"googleAdsYaml","path":"/absolute/owner-only/google-ads.yaml"}. Relative Pfade und symbolische Links werden abgelehnt. Der Server durchsucht weder das Arbeitsverzeichnis noch das Repository nach YAML-Anmeldedaten.
CLI
google-ads-mcp version
google-ads-mcp config init
google-ads-mcp config validate
google-ads-mcp auth doctor --profile <name>
google-ads-mcp accounts discover --profile <name>
google-ads-mcp serve --stdioMCP-Tools
Die feste v0.1-API-Oberfläche ist:
auth_check customers_list
customer_get customer_hierarchy
account_health campaigns_query
campaign_inventory resource_metadata
reports_catalog report_run
change_events_query gaql_validate
gaql_searchTypisierte Listen geben höchstens 200 Elemente pro Seite zurück. Ein einzelner Google-Lesevorgang ist auf 1.000 normalisierte Zeilen begrenzt. Fünf-Minuten-Cursor sind an das Profil und die genaue Anfrage gebunden, mit höchstens 20 aktiven Cursorn pro Profil. Sicheres GAQL hat keinen Cursor und erfordert ein einzelnes, kommentarfreies SELECT, eine nicht sensible Ressource und LIMIT 1..1000.
Siehe docs/tools.md für Parameter, Evidenzsemantik und Berichtsverhalten.
Codex-Plugin
Das Repository-Stammverzeichnis ist das Plugin-Stammverzeichnis. .mcp.json ruft ./bin/google-ads-mcp-launcher auf, das nur die eingefrorene uv-Umgebung über stdio ausführt. Das implizite google-ads-operator-Skill behandelt alle Konto-Strings als nicht vertrauenswürdige Daten und schlägt niemals nicht verfügbare Mutations-Tools vor.
Das Repository erstellt oder ändert bewusst keinen persönlichen Marketplace-Eintrag. Die Installation aus dem Release-Archiv wird während der Abnahme separat validiert.
Verifizierung
uv run --frozen ruff check .
uv run --frozen pyright
uv run --frozen pytest
uv run --frozen python scripts/validate_read_only.py
uv run --frozen python scripts/validate_gaql_templates.py
uv run --frozen python ~/.codex/skills/.system/plugin-creator/scripts/validate_plugin.py .
uv run --frozen python ~/.codex/skills/.system/skill-creator/scripts/quick_validate.py skills/google-ads-operatorAutomatisierte Verifizierung ist keine Abnahme an einem Live-Konto. Die Gates für das Testkonto und den produktions-schreibgeschützten Zugriff in docs/acceptance.md bleiben vor v0.1.0 erforderlich.
Lizenz
Apache-2.0. Google Ads ist eine Marke von Google LLC. Dieses Projekt ist unabhängig und wird nicht von Google unterstützt.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only MCP access to sessions, funnels, campaigns, errors, live visitors, and anomalies.
Read-only MCP access to your DEXUN AdWhiz account: ad accounts, AI recommendations, savings.
Read-only Search Console analytics, URL inspection, indexing diagnostics, and sitemaps.
Provides read access to your GKE and Kubernetes resources.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceProvides read-only access to Google Ads account data including campaigns, ad groups, keywords, and performance reports. Enables querying via GAQL through an MCP interface.MIT
- AlicenseNot gradedqualityCmaintenanceEnables read-only diagnostics for Google Merchant Center accounts, including account info, feed/datasource status, and catalog reports via Merchant Center Query Language.MIT
- AlicenseAqualityAmaintenanceEnables read-only access to Google Ads data through GAQL queries, resource exploration, recommendations, keyword planning and forecasts, and change history across manager and customer accounts.11MIT
- AlicenseNot gradedqualityBmaintenanceEnables read-only access to Autobase Console projects, clusters, environments, operations, PostgreSQL versions, and extensions through configurable MCP tools. Supports paginated listing and filtering, with limited redacted operation logs and no write or arbitrary execution tools.MIT