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 od 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 i proponować nowe funkcje.
Na karcie Problemy możesz zgłaszać błędy i prosić o dodanie funkcji.
Społeczność: dołącz do
#ads-api-ai-toolsna Discordzie społeczności Google Advertising.
Informacje ogólne związane z technologią
Wdrażając ten serwer MCP, nie musisz pisać niestandardowego „kodu łączącego” do uwierzytelniania interfejsu 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 (obecna wersja)
- Język: Python
- Transport: standardowe wejście/wyjście (
stdio) lub HTTP/SSE (Cloud Run) - 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
Zanim rozpoczniesz konfigurację, upewnij się, że masz te dane logowania z konsoli Google Cloud:
- Identyfikator projektu: identyfikator projektu Google Cloud (
GOOGLE_PROJECT_ID). Sprawdź stronę Przegląd interfejsu Google Ads API, aby upewnić się, że Twój projekt ma poziom dostępu Eksplorator, Podstawowy lub Standardowy. Jeśli nie, poproś o przyznanie jednego z tych poziomów dostępu. Pamiętaj, że w obecnych wersjach serwera MCP Google Ads tokeny programisty (GOOGLE_ADS_DEVELOPER_TOKEN) nie są już wymagane, ponieważ poziomy dostępu do interfejsu API są teraz powiązane z projektem Google Cloud. - 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 konfiguracyjnego MCP hosta, np. settings.json, i skieruj GOOGLE_APPLICATION_CREDENTIALS do pliku JSON ADC (lub skonfiguruj domyślny ADC za pomocą gcloud auth application-default login). Jeśli uzyskujesz dostęp do kont za pomocą konta menedżera, możesz też ustawić GOOGLE_ADS_LOGIN_CUSTOMER_ID.
Dokładną lokalizację i nazwę pliku tej konfiguracji znajdziesz w dokumentacji hosta.
{
"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_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
}
}
}
}
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ń
gcloudzainstalowane, uwierzytelnione i skonfigurowane z aktywnym projektem:gcloud config set project YOUR_PROJECT_ID
Tworzenie i przekazywanie obrazu Dockera
Możesz użyć Cloud Build, aby utworzyć obraz i przesłać 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-central1Przejdź do katalogu 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; jest on automatycznie przypisywany przez Google Cloud Run po pierwszym wdrożeniu. Zmienne środowiskowe możesz zaktualizować po wdrożeniu.FASTMCP_HOST: ustaw tę wartość na0.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 stanach.get_resource_metadata: pobiera metadane dotyczące typu zasobu interfejsu Google Ads API, np."campaign".Jest to przydatne, aby poznać strukturę danych i pola dostępne do wysyłania zapytań.
Przykładowe prompty na początek
Zapytaj, co potrafi serwer:
What can the google-ads-mcp server do?
Zapytaj o klientów:
What customers do I have access to?
Zadaj pytanie 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