Das Model Context Protocol (MCP) ist ein offener Standard, mit dem Large Language Models (LLMs) sicher mit externen Daten und Anwendungen interagieren können. Der Google Ads-MCP-Server bietet eine standardisierte Brücke zur Google Ads API, mit der KI-Agents Kampagnendaten in natürlicher Sprache analysieren und abrufen können.
Community-Ressourcen und Support
GitHub-Repository: Im Repository google-ads-mcp finden Sie Demos und Beispiele sowie die Möglichkeit, Fehler zu melden oder Funktionen vorzuschlagen.
Verwenden Sie den Tab „Issues“ für Fehler berichte und Funktionsanfragen.
Community: Treten Sie dem
#ads-api-ai-toolsKanal auf dem Google Advertising Community Discord bei.
Technische Übersicht
Durch die Implementierung dieses MCP-Servers müssen Sie keinen benutzerdefinierten „Glue Code“ für die Google Ads API-Authentifizierung, den Abruf von Ressourcen und die Datenanalyse schreiben. Der Server stellt bestimmte Tools zur Verfügung, die ein LLM selbstständig erkennen und aufrufen kann.
Wichtige Spezifikationen
- Protokoll:MCP (Model Context Protocol)
- Modus:Schreibgeschützt (aktuelle Version)
- Sprache:Python
- Transport:Standardeingabe/-ausgabe (
stdio) - Authentifizierung:OAuth 2.0 oder Dienstkonto
So funktioniert die Interaktionsschleife
- Anfrage: Ein Nutzer sendet eine Anfrage wie „Wie ist die Kampagnenleistung in dieser Woche?“.
- Erkennung:Das LLM prüft die verfügbaren Tools und erkennt die Suchfunktionen von
google-ads-mcp. - Ausführung:Der MCP-Server führt die zugrunde liegende Python-Logik aus, um die Google Ads API abzufragen.
- Kontexteinfügung:Strukturierte Ergebnisse werden an das Kontextfenster des LLM zurückgegeben.
- Antwort:Das LLM fasst die Daten in einer für Menschen lesbaren Antwort zusammen.
Jetzt starten
Führen Sie diese Schritte aus, um den Google Ads-MCP-Server zu konfigurieren und zu verwenden.
Vorbereitung
Vor der Konfiguration benötigen Sie die folgenden Anmeldedaten aus der Google Ads-Entwicklerkonsole:
- Entwicklertoken:Ihr eindeutiger 22-stelliger Zugriffsstring.
- Projekt-ID:Ihre Google Cloud-Projekt-ID.
- OAuth-Anmeldedaten: entweder ein OAuth2-Client-ID/Clientschlüssel-Paar oder eine Reihe von Standardanmeldedaten für Anwendungen.
Konfiguration
Wenn Sie den Server in einen MCP-kompatiblen Host einbinden möchten, fügen Sie der MCP-Konfigurationsdatei Ihres Hosts, z. B. settings.json, den folgenden Eintrag hinzu. Den genauen Speicherort und Dateinamen dieser Konfiguration finden Sie in der Dokumentation Ihres Hosts.
JSON
{
"mcpServers": {
"google-ads-mcp": {
"command": "pipx",
"args": [
"run",
"--spec",
"git+https://github.com/googleads/google-ads-mcp.git",
"google-ads-mcp"
],
"env": {
"GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID",
"GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN"
}
}
}
}
Bereitstellung in Google Cloud
Anstatt diesen MCP-Server lokal zu hosten, können Sie ihn in Google Cloud Run oder einer anderen cloudbasierten Infrastruktur hosten. Das ist nützlich, wenn Sie den Server für verschiedene Agents freigeben oder als Webdienst ausführen möchten.
Vorbereitung
- Ein Google Cloud-Projekt.
Das
gcloudBefehlszeilentool ist installiert, authentifiziert und ein aktives Projekt ist konfiguriert:gcloud config set project YOUR_PROJECT_ID
Docker-Image erstellen und übertragen
Mit Cloud Build können Sie das Image erstellen und in die Artifact Registry übertragen, ohne Docker lokal installieren zu müssen.
Erstellen Sie ein Repository in Artifact Registry:
gcloud artifacts repositories create mcp-servers --repository-format=docker --location=us-central1Erstellen Sie das Image und übertragen Sie es per Push:
gcloud builds submit --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest .Dieser Schritt muss immer ausgeführt werden, wenn Sie den bereitgestellten Server auf die neueste Version aktualisieren möchten.
In Google Cloud Run bereitstellen
Legen Sie die erforderlichen Umgebungsvariablen fest:
GOOGLE_PROJECT_ID: Ihre Google Cloud-Projekt-ID.GOOGLE_ADS_DEVELOPER_TOKEN: Das Entwicklertoken , das der MCP-Server verwenden soll.GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: Die OAuth-Client-ID, die der MCP-Server verwenden soll.GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: Der OAuth-Clientschlüssel, den der MCP-Server verwenden soll.GOOGLE_ADS_MCP_BASE_URL: Die Basis-URL, über die Ihr MCP-Server zugänglich ist. Diese wird nach der ersten Bereitstellung automatisch von Google Cloud Run zugewiesen. Sie können die Umgebungsvariablen nach der Bereitstellung aktualisieren.FASTMCP_HOST: Setzen Sie diesen Wert auf 0.0.0.0, damit FastMCP Verbindungen von allen IP-Adressen akzeptieren kann.
gcloud run deploy google-ads-mcp \
--image us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest \
--platform managed \
--region us-central1 \
--allow-unauthenticated \
--set-env-vars="GOOGLE_PROJECT_ID=YOUR_PROJECT_ID,GOOGLE_ADS_DEVELOPER_TOKEN=YOUR_DEVELOPER_TOKEN,GOOGLE_ADS_MCP_OAUTH_CLIENT_ID=YOUR_CLIENT_ID,GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=YOUR_CLIENT_SECRET,GOOGLE_ADS_MCP_BASE_URL=YOUR_BASE_URL,FASTMCP_HOST=0.0.0.0"
MCP-Client konfigurieren
Aktualisieren Sie nach der Bereitstellung die Konfiguration Ihres MCP-Clients (z. B. ~/.gemini/settings.json), um die Cloud Run-URL zu verwenden.
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
}
}
}
Hauptfunktionen (Tools)
Der Server stellt Tools für die Kontoermittlung und Leistungsberichte zur Verfügung:
list_accessible_customers: Gibt die Liste der Google Ads-Kunden-IDs und Kontonamen zurück, auf die der authentifizierte Nutzer zugreifen kann.search: Führt GAQL-Anfragen (Google Ads Query Language) aus, um Ressourcenmesswerte, Budgets und Status abzurufen.get_resource_metadata: Ruft Metadaten zu einem Google Ads API-Ressourcentyp ab, z. B. „Kampagne“.So können Sie die Struktur der Daten und die Felder verstehen, die für Abfragen verfügbar sind.
Beispiel-Prompts für den Einstieg
Fragen Sie, was der Server kann:
What can the google-ads-mcp server do?
Fragen Sie nach Kunden:
What customers do I have access to?
Fragen Sie nach Kampagnen:
How many active campaigns do I have?
How is my campaign performance this week?
Give me a report of the top spending campaigns split by device category over the
last 7 days for account 1234567890