Server MCP di Google Ads: guida all'integrazione per gli sviluppatori

Il Model Context Protocol (MCP) è uno standard aperto che consente ai modelli linguistici di grandi dimensioni (LLM) di interagire in modo sicuro con dati e applicazioni esterni. Il server MCP di Google Ads fornisce un bridge standardizzato all'API Google Ads. Consente agli agenti AI di recuperare e analizzare i dati dell'account, creare asset, caricare video e gestire le etichette utilizzando il linguaggio naturale.

Risorse e assistenza della community

Panoramica tecnica

L'integrazione del server MCP di Google Ads elimina la necessità di scrivere codice personalizzato per l'autenticazione dell'API Google Ads, il recupero delle risorse, l'analisi dei dati e le mutazioni di asset o etichette supportate. Il server espone strumenti richiamabili e risorse di riferimento (vedi Funzionalità principali) che un LLM può ispezionare e richiamare.

Specifiche principali

  • Protocollo: MCP (Model Context Protocol)
  • Modalità: lettura e mutazione parziale (creazione di asset, caricamenti di video e gestione delle etichette con convalida di proposta e conferma o modalità di sola lettura configurabile)
  • Linguaggio: Python 3.10 o versioni successive
  • Trasporto: input/output standard (stdio) o HTTP trasmissibile (streamable-http su Cloud Run)
  • Autenticazione: credenziali predefinite dell'applicazione (credenziali utente OAuth 2.0 o account di servizio) per stdio locale o credenziali dell'applicazione web OAuth 2.0 per HTTP remoto

Come funziona il loop di interazione

  1. Richiesta: invii un prompt come "Qual è il rendimento della mia campagna questa settimana?" o "Crea un asset di callout per i nostri saldi estivi".
  2. Discovery: l'LLM esamina gli strumenti e le risorse disponibili e seleziona uno strumento google-ads-mcp corrispondente.
  3. Convalida dell'esecuzione o del dry run: gli strumenti di lettura eseguono query direttamente sull'API Google Ads. Gli strumenti di mutazione vengono eseguiti prima in modalità di proposta (validate_only=True) per convalidare gli input senza eseguire il commit delle modifiche (consulta Flusso di lavoro di sicurezza Proponi e conferma).
  4. Inserimento del contesto: il server MCP restituisce i risultati della query strutturata o le voci change_items proposte e un digest di verifica checksum alla finestra di contesto dell'LLM.
  5. Risposta e conferma: l'LLM presenta una risposta o ti chiede di confermare le modifiche proposte. Dopo l'approvazione, l'LLM chiama nuovamente lo strumento mutate con validate_only=False e il valore checksum corrispondente per eseguire il commit della modifica.

Inizia

Segui questi passaggi per configurare ed eseguire il server MCP di Google Ads in locale. Per eseguire il deployment di un servizio remoto condiviso, consulta Deployment su Google Cloud.

Prerequisiti

Prima di configurare il server, completa i seguenti prerequisiti nel tuo ambiente locale e nella console Google Cloud:

  • Progetto Google Cloud: crea o seleziona un progetto Google Cloud con l'API Google Ads abilitata. L'abilitazione dell'API concede l'accesso di test per testare i flussi di lavoro di lettura e modifica con gli account di test. Per accedere agli account di produzione, consulta la pagina Panoramica dell'API Google Ads per l'accesso Explorer, Base o Standard oppure richiedi uno di questi livelli di accesso. In caso contrario, le chiamate di produzione non vanno a buon fine con un errore AuthorizationError.CLOUD_PROJECT_NOT_APPROVED_FOR_PRODUCTION. Google ritirerà i token sviluppatore (GOOGLE_ADS_DEVELOPER_TOKEN) il 9 settembre 2026. Il progetto Google Cloud proprietario del client OAuth o del service account determina il livello di accesso all'API.
  • Credenziali: la modalità stdio locale esegue l'autenticazione con le Credenziali predefinite dell'applicazione (ADC) da un file JSON del client secret OAuth 2.0 o da un service account nel tuo progetto cloud. Imposta la variabile di ambiente GOOGLE_CLOUD_PROJECT quando necessario per specificare la quota predefinita o il progetto ADC. I deployment remoti di streamable-http richiedono invece un ID client e un client secret dell'applicazione web OAuth 2.0 (consulta Esegui il deployment in Google Cloud Run).
  • Software locale (per la modalità stdio): installa Python 3.10 o versioni successive, pipx e lo strumento a riga di comando gcloud (utilizzato per generare i file ADC utente).

Configurazione

  1. Genera Credenziali predefinite dell'applicazione (ADC) utilizzando un client OAuth dal tuo progetto Google Cloud abilitato per l'API e includi l'ambito dell'API Google Ads:

    gcloud auth application-default login \
      --scopes=https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform \
      --client-id-file=PATH_TO_CLIENT_SECRET_JSON
    

    Sostituisci quanto segue:

    • PATH_TO_CLIENT_SECRET_JSON: il percorso del file JSON del client secret OAuth 2.0.

    Questo comando stampa Credentials saved to file: [PATH_TO_CREDENTIALS_JSON] (ad esempio ~/.config/gcloud/application_default_credentials.json su Linux e macOS). Per eseguire l'autenticazione con un service account, salta questo passaggio e indirizza GOOGLE_APPLICATION_CREDENTIALS al file JSON della chiave del service account o passa --impersonate-service-account a gcloud auth application-default login.

  2. Aggiungi il server al file di configurazione MCP dell'host (ad esempio ~/.gemini/config/mcp_config.json, ~/.gemini/settings.json o ~/.claude/settings.json):

    {
      "mcpServers": {
        "google-ads-mcp": {
          "command": "pipx",
          "args": [
            "run",
            "--spec",
            "google-ads-mcp==0.0.6",
            "google-ads-mcp"
          ],
          "env": {
            "GOOGLE_CLOUD_PROJECT": "PROJECT_ID",
            "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON"
          }
        }
      }
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud.
    • PATH_TO_CREDENTIALS_JSON: il percorso del file JSON ADC stampato nel passaggio 1 o del file JSON della chiave dell'account di servizio. Puoi omettere GOOGLE_APPLICATION_CREDENTIALS quando utilizzi la posizione predefinita del file ADC gcloud.

    Per accedere agli account cliente tramite un account amministratore, imposta GOOGLE_ADS_LOGIN_CUSTOMER_ID (10 cifre, senza trattini) in env o passa il parametro login_customer_id nelle singole chiamate allo strumento.

(Facoltativo) Fornisci all'agente competenze e l'assistente per sviluppatori

Il server MCP di Google Ads offre al tuo client AI l'accesso in tempo reale ai dati dei report sull'account, oltre a strumenti per la creazione di asset, il caricamento di video e la gestione delle etichette. Associa il server MCP ai seguenti strumenti complementari per aiutare l'agente a creare query Google Ads Query Language (GAQL) valide e a diagnosticare le variazioni del rendimento dell'account. Questi strumenti generano anche il codice della libreria client, ad esempio script per collegare gli asset creati alle campagne o eseguire altre mutazioni non supportate:

  • Skill dell'agente API Google Ads: moduli di workflow portatili (tra cui google-ads-api-mcp-setup, google-ads-api-account-diagnostics e google-ads-api-quickstart) che aiutano l'agente a utilizzare il server MCP di Google Ads con un overhead di token inferiore. Esegui questo comando per installarli (richiede Node.js) o consulta la guida alle competenze degli agenti dell'API Google Ads per la configurazione di Antigravity, Claude Code, Codex e Cursor:

    npx skills add google/skills/skills/ads
    
  • Assistente per sviluppatori API Google Ads: un plug-in modulare per Google Antigravity e Claude Code che fornisce l'ispezione dello schema Protobuf locale, la convalida GAQL, la generazione di codice della libreria client e la risoluzione dei problemi di conversione offline. Leggi Che cos'è l'assistente per sviluppatori dell'API Google Ads? o segui la guida all'installazione.

Funzionalità principali

Le sezioni seguenti descrivono gli strumenti di lettura, gli strumenti di mutazione parziale e le risorse di riferimento del server. A partire dalla versione v0.0.6, gli strumenti vengono registrati per impostazione predefinita con il prefisso dello spazio dei nomi della loro categoria (ad esempio search_search). Quando esegui l'upgrade di prompt o liste consentite da release senza prefisso, aggiorna i nomi degli strumenti o imposta un prefisso vuoto ("") in tools_config.yaml (consulta Configura gli spazi dei nomi degli strumenti e la modalità di sola lettura).

Strumenti di lettura

  • customers_list_accessible_customers (strumento list_accessible_customers): restituisce gli ID cliente Google Ads direttamente accessibili all'utente autenticato.
  • search_search (strumento search): crea ed esegue query GAQL SearchStream da parametri strutturati (customer_id, resource e fields, oltre ai parametri facoltativi conditions, orderings, limit e login_customer_id) anziché da una stringa GAQL non elaborata. Ogni query aggiunge PARAMETERS omit_unselected_resource_names=true per recuperare in modo pulito attributi, metriche, segmenti, budget e stato delle risorse.
  • metadata_get_resource_metadata (strumento get_resource_metadata): recupera attributi, metriche e segmenti selezionabili, filtrabili e ordinabili per un tipo di risorsa dell'API Google Ads (ad esempio "campaign"). Utilizza questi metadati per scoprire i campi di query validi, tra cui metriche e segmenti aggiunti nelle release secondarie come la versione 26.2, prima di chiamare lo strumento search_search.

Strumenti di modifica (supporto parziale)

  • assets_create_asset (strumento create_asset): crea asset Google Ads autonomi con parametri dedicati per i tipi di asset TEXT, IMAGE, YOUTUBE_VIDEO, SITELINK, CALLOUT e STRUCTURED_SNIPPET. Passa il dizionario extra_params per altri tipi AssetService mutabili (come PRICE, PROMOTION, CALL o BUSINESS_MESSAGE) e includi final_urls a livello di root insieme a sitelink_link_text per gli asset SITELINK. I percorsi dei file locali (image_asset_path) funzionano solo in modalità locale stdio. Per i deployment HTTP remoti, passa il parametro image_asset_data con codifica base64 con image_asset_mime_type impostato su IMAGE_PNG, IMAGE_JPEG o IMAGE_GIF (fino a 20 MB).
  • assets_upload_video_asset (strumento upload_video_asset): carica un file video locale (.3gp, .avi, .flv, .mkv, .mov, .mp4, .mpeg, .mpg, .ogg, .webm o .wmv) su YouTube tramite l'API Google Ads solo in modalità stdio locale. video_title e video_description sono parametri obbligatori e la privacy viene impostata per impostazione predefinita su UNLISTED (o PUBLIC sui canali del brand di proprietà dell'inserzionista con OAuth utente). Questo strumento restituisce un valore video_upload_id di Google Ads (e il nome della risorsa), non l'video_id di YouTube di 11 caratteri. Esegui query su you_tube_video_upload con lo strumento search_search (filtrando per you_tube_video_upload.video_upload_id) fino al giorno you_tube_video_upload.state = 'PROCESSED'. Poi passa you_tube_video_upload.video_id come parametro youtube_video_id a assets_create_asset (asset_type="YOUTUBE_VIDEO").
  • labels_manage_labels (strumento manage_labels): crea, aggiorna e rimuove le etichette dell'account, inclusi nome, descrizione e colore di sfondo esadecimale.
  • labels_manage_label_associations (strumento manage_label_associations): supporta le operazioni di associazione delle etichette CREATE e REMOVE (UPDATE non è supportato) sulle risorse CAMPAIGN, CUSTOMER, AD_GROUP e AD_GROUP_CRITERION. Per le risorse CUSTOMER, resource_id è facoltativo e il valore predefinito è customer_id. Passa un ID {ad_group_id}~{criterion_id} composito per le risorse AD_GROUP_CRITERION e rimuovi le associazioni passando resource_id e label_id o association_resource_name. Le etichette AD_GROUP_AD a livello di annuncio non sono supportate.

Risorse di riferimento

Il server espone quattro risorse MCP di sola lettura che rimangono montate indipendentemente dalle impostazioni di tools_config.yaml:

  • resource://discovery-document: panoramica del discovery REST JSON delle risorse, dei metodi di servizio e degli schemi dell'API Google Ads. Questo strumento integra lo strumento metadata_get_resource_metadata, che restituisce campi di query GAQL selezionabili, filtrabili e ordinabili.
  • resource://metrics: documentazione di riferimento HTML per le metriche dell'API Google Ads.
  • resource://segments: documentazione di riferimento HTML per i segmenti dell'API Google Ads.
  • resource://release-notes: note di rilascio dell'API Google Ads in formato HTML che illustrano le modifiche alle versioni e le nuove funzionalità.

Workflow di sicurezza con proposta e conferma

Ogni strumento di modifica (assets_create_asset, assets_upload_video_asset, labels_manage_labels e labels_manage_label_associations) applica un workflow in due passaggi di proposta e conferma per evitare modifiche involontarie all'account:

  1. Propose (validate_only=True, predefinito): convalida gli input senza eseguire il commit delle modifiche. Gli strumenti per asset ed etichette eseguono un dry run dell'API Google Ads validate_only in tempo reale. Poiché YouTubeVideoUploadService non ha una modalità dry run, assets_upload_video_asset convalida il file locale e ne associa le dimensioni e il timestamp di modifica. Ogni strumento restituisce voci change_items leggibili e un digest SHA-256 checksum stateless associato al parametro customer_id e al payload della richiesta.
  2. Conferma (validate_only=False): dopo aver presentato l'elenco change_items e aver ricevuto la tua approvazione, la chiamata agentica chiama di nuovo lo strumento con validate_only=False, lo stesso parametro e gli stessi argomenti customer_id e il valore checksum del passaggio 1. Il server rifiuta qualsiasi checksum mancante o non corrispondente prima di modificare l'account.

Configura gli spazi dei nomi degli strumenti e la modalità di sola lettura

Il server raggruppa un file tools_config.yaml predefinito con tutte e cinque le categorie di strumenti (customers, search, metadata, labels e assets) abilitate. Personalizza tools_config.yaml per attivare o disattivare in modo selettivo singoli strumenti o spazi dei nomi, modificare o rimuovere i prefissi degli spazi dei nomi o applicare un deployment rigorosamente di sola lettura.

All'avvio, il server risolve tools_config.yaml nel seguente ordine:

  1. Un percorso esplicito nella variabile di ambiente GOOGLE_ADS_MCP_TOOLS_CONFIG (consigliato per gli host stdio locali, la cui directory di lavoro può essere diversa dalla cartella del progetto).
  2. Un file tools_config.yaml nella directory di lavoro attuale del server.
  3. Il file tools_config.yaml predefinito incluso nel pacchetto.

Se GOOGLE_ADS_MCP_TOOLS_CONFIG punta a un file mancante o se un file di configurazione risolto non è valido, il server genera un errore all'avvio anziché tornare ai valori predefiniti.

Il seguente file tools_config.yaml minimo applica un deployment rigorosamente di sola lettura:

namespaces:
  customers: true
  search: true
  metadata: true
  labels: false
  assets: false

Il seguente file tools_config.yaml personalizza i prefissi e filtra i singoli strumenti (ad esempio, esponendo lo strumento create_asset base64 su Cloud Run e disattivando lo strumento upload_video_asset solo locale):

namespaces:
  # Default prefix ("customers_list_accessible_customers")
  customers: true

  # Empty prefix mounts unprefixed tool names ("search")
  search: ""

  # Custom prefix ("schema_get_resource_metadata")
  metadata: "schema"

  # Enable only specific tools in a multi-tool category
  assets:
    enabled_tools:
      - create_asset

Prompt di esempio per iniziare

Prova i seguenti prompt nel tuo client MCP dopo aver connesso il server.

Chiedi cosa può fare il server

What can the google-ads-mcp server do?

Chiedi informazioni sui clienti

What customers do I have access to?

Chiedi informazioni sulle campagne

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

Creare risorse, caricare video e gestire le etichette

Create a callout asset with the text "Free Shipping" for account 1234567890
Upload /path/to/promo.mp4 with title "Summer Sale" and description "Summer promo video" for account 1234567890
Create a label named "Q4 Promo" with background color #34A853 and apply it to campaign 9876543210 in account 1234567890

Deployment su Google Cloud

Per condividere il server MCP tra più agenti o eseguirlo come servizio web, ospitalo su Google Cloud Run o su un altro provider di infrastruttura cloud anziché eseguirlo localmente.

Prerequisiti

  1. Un progetto Google Cloud con l'API Google Ads abilitata (consulta i Prerequisiti per i requisiti di accesso in produzione).
  2. Lo strumento a riga di comando gcloud installato, autenticato e configurato con un progetto attivo:

    gcloud config set project PROJECT_ID
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud.

Crea un'immagine Docker ed eseguine il push

Utilizza Cloud Build per creare l'immagine container ed eseguirne il push su Artifact Registry senza installare Docker localmente:

  1. Crea un repository in Artifact Registry:

    gcloud artifacts repositories create mcp-servers \
      --repository-format=docker --location=us-central1
    
  2. Crea e invia l'immagine da un tag di release nel repository GitHub (o da . in un checkout locale se hai personalizzato Dockerfile o tools_config.yaml):

    gcloud builds submit https://github.com/googleads/google-ads-mcp \
      --git-source-revision=v0.0.6 \
      --tag=us-central1-docker.pkg.dev/PROJECT_ID/mcp-servers/google-ads-mcp:v0.0.6
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud.

    Ricostruisci l'immagine ed esegui nuovamente il deployment ogni volta che aggiorni google-ads-mcp o esegui l'upgrade della libreria client Python google-ads in bundle per le nuove release dell'API Google Ads (ad esempio la versione 26.2).

Esegui il deployment in Google Cloud Run

Configura le seguenti variabili di ambiente e i seguenti secret per il servizio Cloud Run:

  • GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: l'ID client OAuth 2.0 dell'applicazione web del tuo progetto Google Cloud abilitato per l'API per l'autenticazione OAuth a livello di applicazione. Completa i seguenti passaggi di configurazione di OAuth:
    • Aggiungi gli URI di reindirizzamento autorizzati per tutti i client AI che prevedi di connettere (ad esempio https://claude.ai/api/mcp/auth_callback, https://chatgpt.com/connector_platform_oauth_redirect o https://antigravity.google/oauth-callback).
    • Aggiungi l'ambito https://www.googleapis.com/auth/adwords alla schermata per il consenso OAuth in API e servizi > Schermata per il consenso OAuth > Accesso ai dati (Aggiungi o rimuovi ambiti).
    • Se lo stato di pubblicazione della schermata per il consenso OAuth è impostato su Test (impostazione predefinita), aggiungi gli Account Google che si connettono al server MCP come Utenti di test in API e servizi > Schermata per il consenso OAuth > Pubblico (Utenti di test > + Aggiungi utenti).
  • GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: il client secret OAuth corrispondente al tuo ID client OAuth.
  • GOOGLE_ADS_MCP_BASE_URL: l'URL di base pubblico del tuo server MCP (ad esempio https://google-ads-mcp-xyz-uc.a.run.app). Cloud Run assegna questo URL durante il deployment iniziale, quindi esegui prima il deployment senza questa variabile e aggiorna il servizio in un secondo momento.
  • GOOGLE_ADS_MCP_JWT_SIGNING_KEY (consigliato per Cloud Run multi-istanza): un secret permanente che firma i JWT FastMCP durante i riavvii dei container e lo scale out.
  • GOOGLE_ADS_MCP_STORAGE_TYPE (consigliato per Cloud Run multi-istanza): backend permanente per le registrazioni e i token dei client OAuth (redis con GOOGLE_ADS_MCP_STORAGE_REDIS_URL o firestore). Poiché lo stock v0.0.6 Dockerfile installa solo il backend in memoria, installa py-key-value-aio[redis] o .[firestore] prima in un Dockerfile personalizzato. L'utilizzo di firestore richiede anche un database Firestore e il ruolo IAM roles/datastore.user nel service account Cloud Run. Per i test di una singola istanza con spazio di archiviazione in memoria, passa --max-instances=1.
  • GOOGLE_ADS_LOGIN_CUSTOMER_ID (facoltativo): ID cliente amministratore predefinito di 10 cifre (senza trattini) utilizzato quando le chiamate allo strumento omettono il parametro login_customer_id.
  • GOOGLE_ADS_MCP_TOOLS_CONFIG (facoltativo): percorso del container a un file tools_config.yaml personalizzato (ad esempio, montato da Secret Manager in /etc/mcp/tools_config.yaml per applicare la modalità di sola lettura senza ricostruire l'immagine). Consulta Configura gli spazi dei nomi degli strumenti e la modalità di sola lettura.

Archivia GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET e GOOGLE_ADS_MCP_JWT_SIGNING_KEY in Secret Manager ed esegui il deployment del servizio in Google Cloud Run:

gcloud run deploy google-ads-mcp \
  --image=us-central1-docker.pkg.dev/PROJECT_ID/mcp-servers/google-ads-mcp:v0.0.6 \
  --platform=managed \
  --region=us-central1 \
  --allow-unauthenticated \
  --set-env-vars="GOOGLE_ADS_MCP_OAUTH_CLIENT_ID=CLIENT_ID" \
  --set-secrets="GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=MCP_OAUTH_CLIENT_SECRET:latest,GOOGLE_ADS_MCP_JWT_SIGNING_KEY=MCP_JWT_SIGNING_KEY:latest"

Dopo che Cloud Run ha completato il deployment, recupera l'URL del servizio assegnato e aggiorna il servizio con la variabile di ambiente GOOGLE_ADS_MCP_BASE_URL:

gcloud run services update google-ads-mcp \
  --region=us-central1 \
  --update-env-vars="GOOGLE_ADS_MCP_BASE_URL=https://CLOUD_RUN_SERVICE_URL"

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del tuo progetto Google Cloud.
  • CLIENT_ID: l'ID client dell'applicazione web OAuth 2.0.
  • MCP_OAUTH_CLIENT_SECRET: il nome del secret di Secret Manager che memorizza il client secret OAuth 2.0.
  • MCP_JWT_SIGNING_KEY: il nome del secret di Secret Manager che archivia la chiave di firma JWT.
  • CLOUD_RUN_SERVICE_URL: il nome host assegnato al servizio Cloud Run (ad esempio google-ads-mcp-xyz-uc.a.run.app).

Modello di autenticazione e sicurezza

Il deployment con --allow-unauthenticated disabilita il controllo IAM dell'infrastruttura di Cloud Run (roles/run.invoker) in modo che i client AI esterni possano connettersi senza i token degli account di servizio Google Cloud. L'autenticazione viene invece delegata al livello di applicazione:

  • Quando GOOGLE_ADS_MCP_OAUTH_CLIENT_ID e GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET sono impostati, il server applica Google OAuth 2.0 a ogni richiesta e restituisce un codice di stato HTTP 401 Unauthorized ai chiamanti non autenticati. Ogni chiamata allo strumento viene eseguita con l'identità OAuth del chiamante autenticato.
  • Se ometti --allow-unauthenticated, i chiamanti devono passare i token di identità OIDC di Google Cloud con ogni richiesta. I client AI standard (come Claude e ChatGPT) utilizzano OAuth dell'utente finale anziché i token Cloud IAM di Google Cloud, pertanto le connessioni dirette richiedono --allow-unauthenticated accoppiato con OAuth a livello di applicazione.

Configura il client MCP

Dopo il deployment, configura il client MCP con l'URL del servizio Cloud Run. Poiché il server applica OAuth 2.0, il tuo client deve supportare il flusso OAuth MCP o fornire un token di connessione autorizzato:

  • Client abilitati per OAuth: nei client che supportano il rilevamento OAuth MCP (come Antigravity), la connessione attiva una richiesta di conferma da Google per concedere l'ambito https://www.googleapis.com/auth/adwords (visualizzato come .../auth/adwords nella console Google Cloud).
  • Piattaforme AI di terze parti (Claude, ChatGPT): nelle impostazioni del connettore del client, aggiungi un connettore personalizzato che rimandi all'URL del servizio con il percorso /mcp (ad esempio, https://google-ads-mcp-xyz-uc.a.run.app/mcp). Seleziona l'autenticazione OAuth 2.0 con l'ID client e il client secret OAuth e verifica che l'URI di callback del client sia presente negli URI di reindirizzamento autorizzati del client OAuth.
  • Client senza supporto OAuth: i client che non supportano i flussi OAuth HTTP ricevono un codice di stato HTTP 401 Unauthorized. Per questi client, utilizza invece la configurazione stdio locale.

L'esempio seguente configura lo strumento a riga di comando gemini in ~/.gemini/settings.json (per Google Antigravity in ~/.gemini/config/mcp_config.json, sostituisci "httpUrl" con "serverUrl" o "url"):

{
  "mcpServers": {
    "google-ads-mcp": {
      "httpUrl": "https://CLOUD_RUN_SERVICE_URL/mcp"
    }
  }
}

Sostituisci quanto segue:

  • CLOUD_RUN_SERVICE_URL: il nome host assegnato al servizio Cloud Run (ad esempio google-ads-mcp-xyz-uc.a.run.app).

Passaggi successivi