Utilizza il server MCP remoto di Compute Engine

Questo documento mostra come utilizzare il server Model Context Protocol (MCP) remoto di Compute Engine per connetterti alle applicazioni AI, tra cui Gemini CLI, ChatGPT, Claude e le applicazioni personalizzate che stai sviluppando. Il server MCP remoto di Compute Engine fornisce un insieme completo di funzionalità che consentono agli agenti LLM di eseguire una serie di attività di gestione dell'infrastruttura, tra cui:

  • Gestire le istanze di macchine virtuali (VM).
  • Gestire i gestori di gruppi di istanze e i modelli di istanza.
  • Gestire dischi e snapshot.
  • Recuperare informazioni su prenotazioni e impegni. Il server MCP remoto di Compute Engine viene abilitato quando abiliti l'API Compute 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
    Vengono eseguiti sull'infrastruttura del servizio e offrono un endpoint HTTP alle applicazioni AI per la comunicazione tra il client MCP AI e il server MCP. Per saperne di più sull'architettura MCP, consulta Architettura MCP.

    Server MCP Google and Google Cloud remote

    I server MCP Google and Google Cloud remote hanno le seguenti funzionalità e vantaggi:

    • Rilevamento semplificato e centralizzato
    • Endpoint HTTP globali o regionali gestiti
    • Autorizzazione granulare
    • Sicurezza di prompt e risposte facoltativa con la protezione Model Armor
    • Logging di audit 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 Google Cloud account. 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. Verify that billing is enabled for your Google Cloud project.

    4. Make sure that you have the following role or roles on the project: Compute Instance Admin (v1), Compute Security Admin, Service Account User, Service Usage Admin

      Check for the roles

      1. In the Google Cloud console, go to the IAM page.

        Go to IAM
      2. Select the project.
      3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

      4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

      Grant the roles

      1. In the Google Cloud console, go to the IAM page.

        Go to IAM
      2. Select the project.
      3. Click Grant access.
      4. In the New principals field, enter your user identifier. This is typically the email address for a Google Account.

      5. Click Select a role, then search for the role.
      6. To grant additional roles, click Add another role and add each additional role.
      7. Click Save.
    5. 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

    6. Verify that billing is enabled for your Google Cloud project.

    7. Make sure that you have the following role or roles on the project: Compute Instance Admin (v1), Compute Security Admin, Service Account User, Service Usage Admin

      Check for the roles

      1. In the Google Cloud console, go to the IAM page.

        Go to IAM
      2. Select the project.
      3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

      4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

      Grant the roles

      1. In the Google Cloud console, go to the IAM page.

        Go to IAM
      2. Select the project.
      3. Click Grant access.
      4. In the New principals field, enter your user identifier. This is typically the email address for a Google Account.

      5. Click Select a role, then search for the role.
      6. To grant additional roles, click Add another role and add each additional role.
      7. Click Save.
    8. Abilita l'API Compute Engine

      Abilita l'API Compute Engine

    Ruoli obbligatori

    Per ottenere le autorizzazioni necessarie per utilizzare il server MCP remoto di Compute Engine, chiedi all'amministratore di concederti i seguenti ruoli IAM sul tuo Google Cloud progetto:

    • Eseguire chiamate agli strumenti MCP: MCP Tool User (roles/mcp.toolUser)

    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 MCP remoto di Compute Engine. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

    Autorizzazioni obbligatorie

    Per utilizzare il server MCP remoto di Compute Engine sono necessarie le seguenti autorizzazioni:

    • Eseguire chiamate agli strumenti MCP: mcp.tools.call

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

    Devi anche disporre dei ruoli e delle autorizzazioni necessari per eseguire le operazioni di Compute Engine. Per saperne di più, consulta Ruoli e autorizzazioni di Compute Engine.

    Autenticazione e autorizzazione

    I server MCP di Compute Engine 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.

    Ti 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 ai server MCP.

    Ambiti OAuth MCP di Compute Engine

    OAuth 2.0 utilizza ambiti e credenziali per determinare se un'entità autenticata è autorizzata a eseguire un'azione specifica su una risorsa. Per saperne di più sugli ambiti OAuth 2.0 in Google, consulta Utilizzare OAuth 2.0 per accedere alle API di Google.

    Compute Engine ha i seguenti ambiti OAuth degli strumenti MCP:

    URI dell'ambito per gcloud CLI Descrizione
    https://www.googleapis.com/auth/compute.read-only Consente l'accesso solo alla lettura dei dati.
    https://www.googleapis.com/auth/compute.read-write Consente l'accesso alla lettura e alla modifica dei dati.

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

    Configurare un client MCP per utilizzare il server MCP di Compute Engine

    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 deve conoscere l'URL del server MCP remoto.

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

    Per il server MCP di Compute Engine, inserisci quanto segue, se necessario:

    • Nome server: server MCP di Compute Engine
    • URL server o endpoint: https://compute.googleapis.com/mcp
    • Trasporto: HTTP
    • Dettagli di autenticazione: a seconda della modalità di autenticazione, puoi inserire le tue Google Cloud credenziali, l'ID client OAuth e il secret o un'identità e le credenziali dell'agente. Per saperne di più sull' autenticazione, consulta Autenticarsi ai server MCP.

    Per indicazioni specifiche per l'host sulla configurazione e la connessione al server MCP, consulta:

    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 di Compute Engine, consulta il riferimento MCP di Compute Engine.

    Elencare gli strumenti

    Utilizza l'ispettore MCP per elencare gli strumenti o invia una tools/list richiesta HTTP direttamente al server MCP remoto di Compute Engine. Il metodo tools/list non richiede l'autenticazione.

    POST /mcp HTTP/1.1
    Host: compute.googleapis.com
    Content-Type: application/json
    
    {
      "jsonrpc": "2.0",
      "method": "tools/list",
    }
    

    Esempi di casi d'uso

    I seguenti esempi di casi d'uso descrivono come utilizzare il server MCP di Compute Engine per gestire le risorse di Compute Engine:

    • Ispezionare e gestire le risorse. Ad esempio, per comprendere l'allocazione e la configurazione delle risorse nel tuo progetto, puoi elencare tutte le istanze di Compute. Puoi anche trovare tutte le istanze di Compute in esecuzione in una zona a cui è collegato un acceleratore specifico e mostrare la loro posizione e il loro nome per la gestione delle risorse.
    • Liberare spazio dalle risorse inutilizzate per ridurre i costi operativi. Ad esempio, identifica e libera spazio per gli snapshot dei dischi in una zona che non sono più associati a un disco di origine oppure identifica ed elimina le istanze VM arrestate a cui sono collegate risorse GPU costose.
    • Ottimizzare il rendimento delle istanze. Ad esempio, ridimensiona un'istanza VM con provisioning insufficiente a un tipo di macchina più grande della stessa famiglia e conferma l'aggiornamento riuscito.
    • Eseguire il provisioning di VM specializzate per i workload AI con flessibilità di zona. Ad esempio, crea un'istanza VM con un acceleratore GPU specifico collegato, in qualsiasi zona di una regione specificata in cui è disponibile.
    • Risolvere i problemi e convalidare le configurazioni delle istanze. Ad esempio, recupera i dettagli di configurazione per un'istanza VM specifica in cui il job è bloccato, riavviala e verifica che l'acceleratore e il disco sottostanti siano collegati.

    Prompt di esempio

    Di seguito sono riportati alcuni prompt di esempio che puoi utilizzare per eseguire attività utilizzando il server MCP di Compute Engine:

    • "Elenca tutte le VM in PROJECT_ID, inclusi il nome e la zona della VM."
    • "Mostra i dettagli dell'istanza per VM_NAME."
    • "In REGION, trova tutti gli snapshot dei dischi per i quali il disco di origine non esiste più."
    • "Modifica il tipo di macchina di VM_NAME al tipo di macchina più grande successivo nella stessa famiglia di macchine, invia una notifica quando torna online e conferma il nuovo tipo di macchina."
    • "Trova tutte le VM in esecuzione in REGION con acceleratori NVIDIA e mostra la zona e il nome di queste VM."
    • "Crea una VM in ZONE con un acceleratore NVIDIA T4 collegato. Assegna alla VM il nome my-nvidiat4-vm."
    • "Trova tutte le VM arrestate in REGION con acceleratori NVIDIA Tesla T4 ed eliminale."

    Sostituisci quanto segue:

    • PROJECT_ID: l' Google Cloud ID progetto.
    • REGION: il nome della regione in cui esistono le tue risorse.
    • ZONE: il nome della zona in cui esistono le tue VM.
    • VM_NAME: il nome dell'istanza VM.

    Configurazioni di sicurezza e protezione facoltative

    MCP introduce nuovi rischi e considerazioni sulla sicurezza a causa della vasta gamma 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 Google Cloud organizzazione o nel tuo progetto.

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

    Utilizzare Model Armor

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

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

    Abilitare 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 servizi (roles/serviceusage.serviceUsageAdmin), che contiene 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 Google Cloud console, attiva Cloud Shell.

      Attiva Cloud Shell

      Nella parte inferiore della Google Cloud console 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à inclusa e installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.

    2. Esegui il comando seguente 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 Google and Google Cloud remote

    Per proteggere le chiamate e le risposte degli strumenti MCP, puoi utilizzare le impostazioni di base di Model Armor. Un'impostazione di base definisce i filtri di sicurezza minimi che si applicano al 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 abilitata. 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 abilita un filtro o un'applicazione.
    • MEDIUM_AND_ABOVE: il livello di attendibilità per le impostazioni del filtro AI responsabile - Pericoloso. Puoi modificare questa impostazione, anche se valori inferiori potrebbero generare più falsi positivi. Per saperne di più, consulta Livelli di attendibilità di Model Armor.

    Disabilitare la scansione del traffico MCP con Model Armor

    Per impedire a Model Armor di eseguire automaticamente la scansione del traffico da e verso i server MCP di Google in base alle impostazioni di base del progetto, esegui il comando seguente:

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

    Sostituisci PROJECT_ID con l' Google Cloud ID progetto. Model Armor non applica automaticamente le regole definite nelle impostazioni di base di questo progetto al traffico del server MCP di Google.

    Le impostazioni di base e la configurazione generale di Model Armor possono influire su più di un solo 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 rifiuto IAM

    I criteri di rifiuto di Identity and Access Management (IAM) 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:

    • L'entità
    • 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