Utilizzare il server MCP remoto GKE

Questo documento mostra come utilizzare il server Model Context Protocol (MCP) remoto di Google Kubernetes Engine per connettersi ad applicazioni AI, tra cui Gemini CLI, ChatGPT, Claude e applicazioni personalizzate che stai sviluppando. Il server MCP remoto GKE fornisce l'accesso in lettura alle risorse GKE e Kubernetes. Consente a un agente AI di ispezionare e osservare il tuo ambiente. Il server MCP remoto di Google Kubernetes Engine viene attivato quando attivi l'API Kubernetes Engine.

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.

Per informazioni sul server MCP locale GKE, consulta Server MCP GKE su GitHub.

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 log 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.

Potresti voler utilizzare il server MCP locale di GKE per i seguenti motivi:

  • Sviluppo e test locali
  • Utilizzo offline di MCP
  • Creazione di cluster e workload, inclusa la generazione di manifest per i workload AI/ML
  • Configurazione del client locale (utilizzando kubeconfig)
  • Esegui query sui log
  • Ricevi consigli su costi e sicurezza per il tuo ambiente GKE

Per saperne di più su come utilizzare il nostro server MCP locale, vedi Server MCP GKE. Le seguenti sezioni si applicano solo al server remoto MCP di GKE.

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. Installa Google Cloud CLI.

  3. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  4. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  5. Crea o seleziona un Google Cloud progetto.

    Ruoli richiesti per selezionare o creare un progetto

    • Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico. Puoi selezionare qualsiasi progetto per il quale ti è stato concesso un ruolo.
    • Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto (roles/resourcemanager.projectCreator), che contiene l'autorizzazione resourcemanager.projects.create. Scopri come concedere i ruoli.
    • Creare un progetto Google Cloud :

      gcloud projects create PROJECT_ID

      Sostituisci PROJECT_ID con un nome per il progetto Google Cloud che stai creando.

    • Seleziona il progetto Google Cloud che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del progetto Google Cloud .

  6. Verifica che la fatturazione sia attivata per il tuo progetto Google Cloud .

  7. Abilita l'API Kubernetes Engine:

    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.

    gcloud services enable container.googleapis.com
  8. Concedi ruoli al tuo account utente. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM: roles/container.clusterViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    Sostituisci quanto segue:

    • PROJECT_ID: il tuo ID progetto.
    • USER_IDENTIFIER: l'identificatore del tuo account utente . Ad esempio: myemail@example.com.
    • ROLE: il ruolo IAM che concedi al tuo account utente.
  9. Installa Google Cloud CLI.

  10. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  11. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  12. Crea o seleziona un Google Cloud progetto.

    Ruoli richiesti per selezionare o creare un progetto

    • Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico. Puoi selezionare qualsiasi progetto per il quale ti è stato concesso un ruolo.
    • Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto (roles/resourcemanager.projectCreator), che contiene l'autorizzazione resourcemanager.projects.create. Scopri come concedere i ruoli.
    • Creare un progetto Google Cloud :

      gcloud projects create PROJECT_ID

      Sostituisci PROJECT_ID con un nome per il progetto Google Cloud che stai creando.

    • Seleziona il progetto Google Cloud che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del progetto Google Cloud .

  13. Verifica che la fatturazione sia attivata per il tuo progetto Google Cloud .

  14. Abilita l'API Kubernetes Engine:

    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.

    gcloud services enable container.googleapis.com
  15. Concedi ruoli al tuo account utente. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM: roles/container.clusterViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    Sostituisci quanto segue:

    • PROJECT_ID: il tuo ID progetto.
    • USER_IDENTIFIER: l'identificatore del tuo account utente . Ad esempio: myemail@example.com.
    • ROLE: il ruolo IAM che concedi al tuo account utente.

Ruoli obbligatori

L'entità che chiama gli strumenti del server MCP remoto deve disporre delle autorizzazioni per accedere alle risorse GKE. Questa entità può essere un utente umano o un account di servizio automatizzato. Concedi almeno il seguente ruolo sul tuo progettoGoogle Cloud :

  • MCP Tool User (roles/mcp.toolUser): Concede l'autorizzazione a effettuare chiamate allo strumento all'endpoint server MCP.
  • Visualizzatore cluster Kubernetes Engine (roles/container.clusterViewer): questo ruolo fornisce l'accesso in sola lettura necessario per gli strumenti del server remoto.

Concedi questo ruolo a:

  • Un account utente quando una persona interagisce con il server MCP tramite un client come Gemini CLI.
  • Un service account quando crei un agente o un'applicazione autonomi che chiama il server MCP.

Autenticazione e autorizzazione

I server MCP remoti GKE utilizzano il protocollo OAuth 2.0 con Identity and Access Management (IAM) per l'autenticazione e l'autorizzazione. Tutte le Google Cloud identità sono supportate per l'autenticazione ai server MCP.

Il server MCP remoto GKE non accetta chiavi API per l'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 remoto GKE

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.

GKE dispone dei seguenti ambiti OAuth dello strumento MCP:

URI dell'ambito per gcloud CLI Descrizione
https://www.googleapis.com/auth/container Concede l'accesso completo in lettura e scrittura alle risorse GKE.
https://www.googleapis.com/auth/container.read-only Concede l'accesso di sola lettura alle tue risorse GKE.
https://www.googleapis.com/auth/cloud-platform Concede l'accesso in lettura/scrittura completo ai tuoi Google Cloud progetti.

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 GKE, consulta API GKE.

Configurare un client MCP per utilizzare il server MCP GKE

I programmi host, come Claude o Gemini CLI, possono creare istanze di client MCP che si connettono a un singolo server MCP. Un programma host può avere più client che si connettono a server MCP diversi. Per connettersi a un server MCP remoto, il client MCP deve conoscere almeno l'URL del server MCP remoto.

Nell'host, cerca un modo per connetterti a un server MCP remoto. Ti viene chiesto di inserire i dettagli del server, come nome e URL.

Per il server MCP remoto GKE, inserisci quanto segue in base alle esigenze:

  • Nome server: server MCP remoto GKE
  • URL del server o Endpoint: https://container.googleapis.com/mcp o un altro URL del set di strumenti, vedi Strumenti disponibili
  • Trasporto: HTTP
  • Dettagli di autenticazione: a seconda di come vuoi autenticarti, puoi inserire le tue Google Cloud credenziali, l'ID client e il client secret OAuth oppure l'identità e le credenziali di un agente. Per saperne di più sull'autenticazione, consulta Autenticarsi sui server MCP.

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

Per indicazioni più generali, vedi Connettersi ai server MCP remoti.

Strumenti disponibili

Per visualizzare i dettagli degli strumenti MCP disponibili e le relative descrizioni per il server GKE MCP, consulta il riferimento a GKE MCP.

Strumenti per le liste

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

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

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

Esempi di casi d'uso

Di seguito sono riportati esempi di casi d'uso per il server MCP remoto di GKE:

  • Controlla la configurazione e lo stato dei tuoi cluster GKE e dei pool di nodi. Ad esempio, utilizza il prompt: "Mostrami i dettagli del mio cluster "production-cluster" ed elenca tutti i relativi pool di nodi".
  • Visualizza le configurazioni delle risorse Kubernetes e i log dei container dall'interno di un cluster senza utilizzare kubectl. Ad esempio, utilizza il prompt: "Recupera il file YAML per "frontend-deployment" nello spazio dei nomi "default".
  • Monitora lo stato delle operazioni GKE a lunga esecuzione, come gli upgrade dei cluster. Ad esempio, utilizza il prompt: "Elenca tutte le operazioni GKE nel mio progetto dell'ultima ora".

Configurazioni di sicurezza facoltative

MCP introduce nuovi rischi e considerazioni sulla sicurezza a causa dell'ampia varietà di azioni che puoi eseguire con gli strumenti MCP. Per ridurre al minimo e gestire questi rischi, Google Cloud offre impostazioni predefinite e policy 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.

Quando utilizzi MCP con GKE, è importante comprendere il modello di responsabilità condivisa tra te e Google. Sebbene Google protegga l'infrastruttura e il server MCP stesso, tu sei responsabile della protezione delle credenziali utilizzate dal client MCP, della definizione di norme IAM appropriate per queste credenziali e del monitoraggio delle azioni intraprese dall'agente 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 implementando l'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.

Quando Model Armor è abilitato con il logging abilitato, Model Armor registra l'intero payload. Ciò potrebbe esporre informazioni sensibili nei log.

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 i server MCP remoti di Google e Google Cloud

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 di 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.

Disabilitare l'analisi del traffico MCP con Model Armor

Per impedire a Model Armor di analizzare automaticamente il traffico da e verso i server Google MCP in base alle impostazioni di base del progetto, 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 applica automaticamente le regole definite nelle impostazioni di base di questo progetto a nessun traffico del server MCP di Google.

Le impostazioni di base e la configurazione generale di Model Armor possono influire su più di un semplice MCP. Poiché Model Armor si integra con servizi come Vertex AI, qualsiasi modifica apportata alle impostazioni di base può influire sulla scansione del traffico e sui comportamenti di sicurezza in tutti i servizi integrati, non solo in MCP.

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

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

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

  • Il preside
  • Proprietà dello strumento come 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