Model Context Protocol (MCP) to otwarty standard, który umożliwia dużym modelom językowym (LLM) bezpieczną interakcję z zewnętrznymi danymi i aplikacjami. Serwer MCP Google Ads zapewnia ustandaryzowany pomost do interfejsu Google Ads API, który umożliwia agentom AI analizowanie i pobieranie danych o kampaniach za pomocą języka naturalnego.
Materiały i pomoc dla społeczności
Repozytorium GitHub: w repozytorium google-ads-mcp znajdziesz wersje demonstracyjne i przykłady, a także możesz zgłaszać błędy lub proponować funkcje.
Na karcie Problemy możesz zgłaszać błędy i prosić o dodanie funkcji.
Społeczność: dołącz do kanału
#ads-api-ai-toolsna Discordzie społeczności Google Advertising.
Omówienie techniczne
Wdrażając ten serwer MCP, nie musisz pisać niestandardowego „kodu łączącego” do uwierzytelniania w interfejsie Google Ads API, pobierania zasobów i parsowania danych. Serwer udostępnia konkretne narzędzia, które model LLM może samodzielnie wykrywać i wywoływać.
Najważniejsze specyfikacje
- Protokół: MCP (Model Context Protocol)
- Tryb: Tylko do odczytu (bieżąca wersja)
- Język: Python
- Transport: standardowe wejście/wyjście (
stdio) - Uwierzytelnianie: OAuth 2.0 lub konto usługi
Jak działa pętla interakcji
- Żądanie: użytkownik przesyła zapytanie, np. „Jakie są wyniki mojej kampanii w tym tygodniu?”.
- Odkrywanie: LLM sprawdza dostępne narzędzia i identyfikuje funkcje wyszukiwania.
google-ads-mcp - Wykonanie: serwer MCP wykonuje podstawową logikę Pythona, aby wysyłać zapytania do interfejsu Google Ads API.
- Wstrzykiwanie kontekstu: ustrukturyzowane wyniki są zwracane do okna kontekstu LLM.
- Odpowiedź: LLM syntetyzuje dane w odpowiedź zrozumiałą dla człowieka.
Rozpocznij
Aby skonfigurować i używać serwera MCP Google Ads, wykonaj te czynności.
Wymagania wstępne
Przed konfiguracją upewnij się, że masz te dane logowania z konsoli Google Cloud:
- Identyfikator projektu: numer Twojego projektu Google Cloud. Sprawdź na stronie z omówieniem interfejsu Google Ads API, czy Twój projekt ma poziom dostępu Eksplorator, Podstawowy lub Standardowy. Jeśli nie, poproś o przyznanie jednego z tych poziomów dostępu.
- Dane logowania OAuth: para identyfikatora klienta OAuth 2.0 i tajnego klucza klienta lub zestaw domyślnych danych logowania aplikacji.
Konfiguracja
Aby zintegrować serwer z hostem zgodnym z MCP, dodaj ten wpis do pliku konfiguracji MCP hosta, np. settings.json. Dokładną lokalizację i nazwę pliku konfiguracji znajdziesz w dokumentacji hosta.
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"
}
}
}
}
Wdrożenie w Google Cloud
Zamiast hostować ten serwer MCP lokalnie, możesz hostować go w Google Cloud Run lub w innej infrastrukturze opartej na chmurze. Jest to przydatne, jeśli chcesz udostępniać serwer różnym agentom lub stosować go jako usługę internetową.
Wymagania wstępne
- Projekt Google Cloud.
Narzędzie wiersza poleceń
gcloudmusi być zainstalowane, uwierzytelnione i musi mieć skonfigurowany aktywny projekt:gcloud config set project YOUR_PROJECT_ID
Tworzenie i przekazywanie obrazu Dockera
Możesz użyć Cloud Build do utworzenia obrazu i przesłania go do Artifact Registry bez konieczności instalowania Dockera lokalnie.
Utwórz repozytorium w Artifact Registry:
gcloud artifacts repositories create mcp-servers --repository-format=docker --location=us-central1Otwórz katalog projektu:
cd <full path>/google-ads-mcpUtwórz i prześlij obraz:
gcloud builds submit --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest .Pamiętaj, że ten krok musisz wykonać za każdym razem, gdy chcesz zaktualizować wdrożony serwer do najnowszej wersji.
Wdrażanie w Google Cloud Run
Ustaw wymagane zmienne środowiskowe:
GOOGLE_PROJECT_ID: identyfikator Twojego projektu Google Cloud, który ma odpowiednie poziomy dostępu do interfejsu API.GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: identyfikator klienta OAuth, którego ma używać serwer MCP.GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: tajny klucz klienta OAuth, którego ma używać serwer MCP.GOOGLE_ADS_MCP_BASE_URL: podstawowy adres URL, pod którym dostępny jest serwer MCP: zostanie on automatycznie przypisany przez Google Cloud Run po pierwszym wdrożeniu. Zmienne środowiskowe możesz zaktualizować po wdrożeniu.FASTMCP_HOST: ustaw wartość 0.0.0.0, aby umożliwić FastMCP akceptowanie połączeń ze wszystkich adresów IP.
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_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"
Konfigurowanie klienta MCP
Po wdrożeniu zaktualizuj konfigurację klienta MCP (np.~/.gemini/settings.json), aby używać adresu URL Cloud Run.
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
}
}
}
Główne możliwości (narzędzia)
Serwer udostępnia narzędzia przeznaczone do wykrywania kont i raportowania skuteczności:
list_accessible_customers: zwraca listę identyfikatorów klientów Google Ads i nazw kont dostępnych dla uwierzytelnionego użytkownika.search: wykonuje żądania języka zapytań Google Ads (GAQL), aby pobierać dane o zasobach, budżetach i stanie.get_resource_metadata: pobiera metadane dotyczące typu zasobu interfejsu Google Ads API, np. „kampania”.Jest to przydatne, aby poznać strukturę danych i pola dostępne do wysyłania zapytań.
Przykładowe prompty na początek
Zapytaj, co może zrobić serwer:
What can the google-ads-mcp server do?
Zapytaj o klientów:
What customers do I have access to?
Zadawanie pytań o kampanie:
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