Utilizza il server MCP remoto Pub/Sub per gestire le risorse Pub/Sub e pubblicare i messaggi

Questo documento descrive come utilizzare il server MCP remoto Pub/Sub per connettersi a Pub/Sub da applicazioni AI come Gemini CLI, la modalità agent in Gemini Code Assist, Claude Code o in applicazioni AI che stai sviluppando.

Il server Pub/Sub MCP ti consente di gestire le risorse Pub/Sub e pubblicare messaggi. Puoi creare, elencare, ottenere, aggiornare ed eliminare argomenti, sottoscrizioni e snapshot Pub/Sub, nonché pubblicare messaggi negli argomenti.

Il server MCP remoto Pub/Sub viene abilitato quando abiliti l'API Pub/Sub.

Il Model Context Protocol (MCP) standardizza il modo in cui i modelli linguistici di grandi dimensioni (LLM) e le applicazioni o gli agenti AI si connettono a origini dati esterne. I server MCP ti consentono di utilizzare i loro strumenti, risorse e prompt per eseguire azioni e ottenere dati aggiornati dal loro servizio di backend.

Qual è la differenza tra i server MCP locali e remoti?

Server MCP locali
In genere vengono eseguiti sulla macchina locale e utilizzano i flussi di input e output standard (stdio) per la comunicazione tra i servizi sullo stesso dispositivo.
Server MCP remoti
Viene eseguito sull'infrastruttura del servizio e offre un endpoint HTTP alle applicazioni di AI per la comunicazione tra il client AI MCP e il server MCP. Per maggiori informazioni sull'architettura MCP, consulta la sezione Architettura MCP.

Google e Google Cloud server MCP remoti

Google e i Google Cloud server MCP remoti hanno le seguenti funzionalità e vantaggi:

  • Rilevamento semplificato e centralizzato.
  • Endpoint HTTP globali o regionali gestiti.
  • Autorizzazione granulare.
  • Sicurezza facoltativa di prompt e risposte con la protezione Model Armor.
  • Audit logging centralizzato.

Per informazioni su altri server MCP e sui controlli di sicurezza e governance disponibili per i server MCP di Google Cloud, consulta la panoramica dei server MCP di Google Cloud.

Prima di iniziare

  1. Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  6. Abilita l'API Pub/Sub.

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo dei servizi (roles/serviceusage.serviceUsageAdmin), che include l'autorizzazione serviceusage.services.enable. Scopri come concedere i ruoli.

    Abilitare l'API

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per utilizzare il server Pub/Sub MCP, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto in cui vuoi utilizzare il server MCP:

  • Effettua chiamate allo strumento MCP: MCP Tool User (roles/mcp.toolUser)
  • Crea, aggiorna ed elimina risorse Pub/Sub: Editor Pub/Sub (roles/pubsub.editor)

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per utilizzare il server Pub/Sub MCP. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per utilizzare il server Pub/Sub MCP sono necessarie le seguenti autorizzazioni:

  • Effettua chiamate allo strumento MCP: mcp.tools.call

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Le autorizzazioni Pub/Sub richieste dipendono dall'operazione specifica che vuoi eseguire. Per saperne di più, consulta Ruoli e autorizzazioni Pub/Sub.

Autenticazione e autorizzazione

Il server MCP remoto Pub/Sub utilizza il protocollo OAuth 2.0 con Identity and Access Management (IAM) per l'autenticazione e l'autorizzazione. Tutte le identitàGoogle Cloud sono supportate per l'autenticazione ai server MCP.

Pub/Sub non supporta le chiavi API come metodo di autenticazione.

Consigliamo di creare un'identità separata per gli agenti che utilizzano gli strumenti MCP in modo che l'accesso alle risorse possa essere controllato e monitorato. Per saperne di più sull'autenticazione, consulta Autenticarsi sui server MCP.

Ambiti OAuth MCP di Pub/Sub

OAuth 2.0 utilizza ambiti e credenziali per determinare se un principal autenticato è autorizzato a eseguire un'azione specifica su una risorsa. Per saperne di più sugli ambiti OAuth 2.0 in Google, leggi Utilizzare OAuth 2.0 per accedere alle API di Google. Pub/Sub ha i seguenti ambiti OAuth dello strumento MCP:

URI ambito Descrizione
https://www.googleapis.com/auth/pubsub Visualizzare e gestire le risorse Pub/Sub.

Potrebbero essere necessari ambiti aggiuntivi per le risorse a cui si accede durante una chiamata allo strumento. Per visualizzare un elenco degli ambiti richiesti per Pub/Sub, consulta API Pub/Sub.

Configura un client MCP per utilizzare il server MCP Pub/Sub

Le applicazioni e gli agenti AI, come Claude o Gemini CLI, possono creare un'istanza di un client MCP che si connette a un singolo server MCP. Un'applicazione AI può avere più client che si connettono a server MCP diversi. Per connettersi a un server MCP remoto, il client MCP ha bisogno dell'URL del server MCP remoto.

Nella tua applicazione AI, cerca un modo per connetterti a un server MCP remoto. Ti viene chiesto di inserire i dettagli del server, ad esempio il nome e l'URL.

Per il server MCP Pub/Sub, inserisci quanto segue in base alle esigenze:

  • Nome server: server Pub/Sub MCP
  • URL server o Endpoint: https://pubsub.googleapis.com/mcp
  • Trasporto: HTTP
  • Dettagli di autenticazione: a seconda di come vuoi autenticarti, puoi inserire le tue Google Cloud credenziali, l'ID client OAuth e il segreto oppure l'identità e le credenziali di un agente. Per saperne di più sull'autenticazione, consulta Eseguire l'autenticazione nei server MCP.
  • Ambito OAuth: l'ambito OAuth 2.0 che vuoi utilizzare per connetterti al server MCP Pub/Sub. Per maggiori informazioni, consulta Ambiti OAuth MCP di Pub/Sub.

Per indicazioni specifiche per l'host, consulta quanto segue:

Per aggiungere il server MCP Pub/Sub a Gemini CLI, il file di estensione deve contenere quanto segue:

{
  "name": "EXT_NAME",
  "version": "1.0.0",
  "mcpServers": {
    "MCP_SERVER_NAME": {
      "httpUrl": "https://pubsub.googleapis.com/mcp",
      "authProviderType": "google_credentials",
      "oauth": {
        "scopes": ["https://www.googleapis.com/auth/pubsub"]
      },
      "timeout": 30000,
      "headers": {
        "x-goog-user-project": "PROJECT_ID"
      }
    }
  }
}

Per indicazioni più generali, consulta le seguenti risorse:

Strumenti disponibili

Per visualizzare i dettagli degli strumenti MCP disponibili e le relative descrizioni per il server MCP Pub/Sub, consulta il riferimento MCP Pub/Sub.

Strumenti per le liste

Utilizza lo strumento di controllo MCP per elencare gli strumenti o invia una tools/list richiesta HTTP direttamente al server remoto Pub/Sub MCP. Il metodo tools/list non richiede l'autenticazione.

POST /mcp HTTP/1.1
Host: pubsub.googleapis.com
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/list",
}

Esempi di casi d'uso

Di seguito sono riportati alcuni casi d'uso di esempio per il server MCP Pub/Sub:

Prompt di esempio

  • "Crea una pipeline che utilizzi i messaggi dell'argomento Pub/Sub my-topic, filtri i messaggi con l'attributo priority=low e scriva i messaggi nel bucket Cloud Storage my-bucket."

  • "Crea un abbonamento dall'argomento my-topic alla tabella BigQuery my-table, con le consegne non riuscite inviate a my-dead-letter-topic."

Configurazioni di sicurezza facoltative

MCP introduce nuovi rischi e considerazioni sulla sicurezza a causa dell'ampia varietà di azioni che possono essere intraprese con gli strumenti MCP. Per ridurre al minimo e gestire questi rischi, Google Cloud offre criteri predefiniti e personalizzabili per controllare l'utilizzo degli strumenti MCP nella tua organizzazione o nel tuo progetto Google Cloud .

Per saperne di più sulla sicurezza e sulla governance di MCP, consulta Sicurezza e protezione dell'AI.

Utilizzare Model Armor

Model Armor è un servizioGoogle Cloud progettato per migliorare la sicurezza delle tue applicazioni di AI. Funziona controllando in modo proattivo i prompt e le risposte degli LLM, proteggendo da vari rischi e supportando pratiche di AI responsabile. Che tu stia eseguendo il deployment dell'AI nel tuo ambiente cloud o su provider cloud esterni, Model Armor può aiutarti a prevenire input dannosi, verificare la sicurezza dei contenuti, proteggere i dati sensibili, mantenere la conformità e applicare le tue norme di sicurezza dell'AI in modo coerente nel tuo panorama AI diversificato.

Model Armor è disponibile solo in località regionali specifiche. Se Model Armor è abilitato per un progetto e una chiamata a quel progetto proviene da una regione non supportata, Model Armor effettua una chiamata tra regioni. Per maggiori informazioni, vedi Località di Model Armor.

Abilita Model Armor

Prima di poter utilizzare Model Armor, devi abilitare le API Model Armor.

Console

  1. Abilita l'API Model Armor.

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo dei servizi (roles/serviceusage.serviceUsageAdmin), che include l'autorizzazione serviceusage.services.enable. Scopri come concedere i ruoli.

    Abilitare l'API

  2. Seleziona il progetto in cui vuoi attivare Model Armor.

gcloud

Prima di iniziare, segui questi passaggi utilizzando Google Cloud CLI con l'API Model Armor:

  1. Nella console Google Cloud , attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.

  2. Esegui questo comando per impostare l'endpoint API per il servizio Model Armor.

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"

    Sostituisci LOCATION con la regione in cui vuoi utilizzare Model Armor.

Configurare la protezione per Google e Google Cloud server MCP remoti

Per proteggere le chiamate e le risposte dello strumento MCP, puoi utilizzare le impostazioni di base di Model Armor. Un'impostazione di base definisce i filtri di sicurezza minimi che vengono applicati a tutto il progetto. Questa configurazione applica un insieme coerente di filtri a tutte le chiamate e le risposte degli strumenti MCP all'interno del progetto.

Configura un'impostazione di base di Model Armor con la sanificazione MCP attivata. Per saperne di più, consulta Configurare le impostazioni di base di Model Armor.

Vedi il seguente comando di esempio:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

Sostituisci PROJECT_ID con l'ID progetto Google Cloud .

Tieni presente le seguenti impostazioni:

  • INSPECT_AND_BLOCK: il tipo di applicazione che ispeziona i contenuti per il server MCP di Google e blocca i prompt e le risposte che corrispondono ai filtri.
  • ENABLED: l'impostazione che attiva un filtro o l'applicazione.
  • MEDIUM_AND_ABOVE: il livello di confidenza per le impostazioni del filtro AI responsabile - Pericoloso. Puoi modificare questa impostazione, anche se valori più bassi potrebbero generare più falsi positivi. Per saperne di più, consulta Livelli di confidenza di Model Armor.

Disattivare l'analisi del traffico MCP con Model Armor

Se vuoi interrompere la scansione del traffico Google MCP con Model Armor, esegui questo comando:

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

Sostituisci PROJECT_ID con l'ID progetto Google Cloud .

Model Armor non eseguirà la scansione del traffico MCP nel progetto.

Controllare l'utilizzo di MCP con i criteri di negazione IAM

I criteri di negazione di Identity and Access Management (IAM) ti aiutano a proteggere Google Cloud i server MCP remoti. Configura queste policy per bloccare l'accesso indesiderato allo strumento MCP.

Ad esempio, puoi negare o consentire l'accesso in base a:

  • Il preside
  • Proprietà degli strumenti come di sola lettura
  • L'ID client OAuth dell'applicazione

Per saperne di più, consulta Controllare l'utilizzo di MCP con Identity and Access Management.

Passaggi successivi