Utilizzare i server MCP

I server MCP consentono di accedere ed eseguire strumenti per creare, gestire ed eseguire query Google Cloud sulle risorse utilizzando le piattaforme degli agenti AI. Questo documento descrive come connettersi ai Google Cloud server Model Context Protocol (MCP) remoti dall'estensione Google Cloud Data Agent Kit per Antigravity IDE.

Server MCP supportati

I seguenti server MCP remoti sono supportati per l'utilizzo nell'estensione Data Agent Kit per Antigravity IDE. Per dettagli specifici del prodotto, consulta queste guide:

Un server MCP remoto viene abilitato quando abiliti l'API corrispondente. Ad esempio, quando abiliti l'API Spanner nel tuo progetto, l'MCP remoto di Spanner viene abilitato automaticamente.

Google Cloud Server MCP remoti

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

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

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 consentono di utilizzare i relativi strumenti, risorse e prompt per eseguire azioni e ottenere dati aggiornati dal 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.

Prima di iniziare

  1. Installa l'estensione Data Agent Kit per Antigravity IDE.
  2. Configura l'estensione. Assicurati di abilitare tutte le API.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per accedere ai server Google Cloud MCP dal tuo IDE, chiedi all'amministratore di concederti il ruolo IAM Utente dello strumento MCP(roles/mcp.toolUser) nel progetto su cui stai lavorando.

A seconda delle risorse a cui prevedi di accedere, potresti aver bisogno di ruoli aggiuntivi oltre a quelli che ti consentono di utilizzare l'estensione. Per visualizzare i ruoli minimi richiesti per accedere ai server MCP remoti per ogni servizio supportato Google Cloud, consulta le guide specifiche del prodotto.

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

Simulazione dell'identità dei service account

Quando ti connetti ai server MCP dall'estensione Data Agent Kit per Antigravity IDE, puoi utilizzare le tue credenziali utente o la simulazione dell'identità dei service account. Ti consigliamo di utilizzare la simulazione dell'identità dei account di servizio per gcloud CLI e le credenziali predefinite dell'applicazione (ADC) quando ti connetti ai server MCP.

Inizia con le credenziali che hai utilizzato per accedere a Google Cloud gcloud CLI in Antigravity IDE, in genere il tuo account utente. Poi richiedi credenziali di breve durata per il tuo service account e utilizza le credenziali del account di servizio anziché le tue credenziali utente. Per saperne di più, consulta Utilizza account di servizio account.

Per indicazioni sull'utilizzo della simulazione dell'identità dei account di servizio per l'autenticazione ai server MCP, consulta Simulazione dell'identità dei service account.

Autenticazione e autorizzazione

Quando utilizzi Antigravity IDE, le tue credenziali predefinite dell'applicazione ti autenticano ai Google Cloud server MCP.

Configurare Google Cloud i server MCP remoti nell'estensione

Utilizzando gli strumenti agentici nell'IDE, puoi creare un'istanza di un client MCP che si connette a un singolo server MCP. Puoi 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.

Per ogni client, utilizza quanto segue in base alle esigenze.

  • Nome server: SERVER_NAME
  • Endpoint: ENDPOINT
  • Trasporto: HTTP
  • Dettagli di autenticazione: a seconda di come vuoi autenticarti, puoi inserire le tue Google Cloud credenziali, l'ID client OAuth e il secret o un'identità e le credenziali dell'agente.
  • Ambito OAuth: l'ambito OAuth 2.0 che vuoi utilizzare quando ti connetti al server MCP di AlloyDB.

Sostituisci SERVER_NAME e ENDPOINT con i valori per il servizio a cui ti stai connettendo. Per AlloyDB, devi specificare una regione, ad esempio us-east4.

Servizio

Nome server

Endpoint

AlloyDB

Server MCP di AlloyDB

https://alloydb.REGION.rep.googleapis.com/mcp

BigQuery

Server MCP di BigQuery

https://bigquery.googleapis.com/mcp

Cloud SQL

Server MCP di Cloud SQL

https://sqladmin.googleapis.com/mcp

Knowledge Catalog

Server MCP di Knowledge Catalog

https://dataplex.googleapis.com/mcp

Managed Service for Apache Spark

Server MCP di Managed Service for Apache Spark

https://dataproc-us-central1.googleapis.com/mcp

Spanner

Server MCP di Spanner

https://spanner.googleapis.com/mcp

Configurazioni MCP per la casella degli strumenti e i server MCP remoti

Utilizza le seguenti configurazioni per ogni servizio Google Cloud Data Agent Kit a cui vuoi connetterti.

AlloyDB

Telecomando

'datacloud_alloydb_remote': {
  serverUrl: 'https://alloydb.REGION.rep.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: ['https://www.googleapis.com/auth/cloud-platform'],
  },
},

Locale

'datacloud_alloydb-postgres-admin_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'alloydb-postgres-admin',
    '--stdio'
  ],
  'env': {},
},
'datacloud_alloydb-postgres_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'alloydb-postgres',
    '--stdio'
  ],
  'env': {
    'ALLOYDB_POSTGRES_CLUSTER': '',
    'ALLOYDB_POSTGRES_DATABASE': '',
    'ALLOYDB_POSTGRES_INSTANCE': '',
    'ALLOYDB_POSTGRES_IP_TYPE': '',
    'ALLOYDB_POSTGRES_PASSWORD': '',
    'ALLOYDB_POSTGRES_PROJECT': '',
    'ALLOYDB_POSTGRES_REGION': '',
    'ALLOYDB_POSTGRES_USER': '',
  },
},

BigQuery

Telecomando

'datacloud_bigquery_remote': {
  serverUrl: 'https://bigquery.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: [
      'https://www.googleapis.com/auth/bigquery',
      'https://www.googleapis.com/auth/cloud-platform',
    ],
},

Locale

'datacloud_bigquery_toolbox': {
  command: 'npx',
  args: [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'bigquery',
    '--stdio'
  ],
  env: {
    'BIGQUERY_LOCATION': '',
    'BIGQUERY_PROJECT': '',
  },
},

Cloud SQL

Telecomando

'datacloud_cloud-sql_remote': {
  serverUrl: 'https://sqladmin.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: ['https://www.googleapis.com/auth/cloud-platform'],
  },
},

Locale

'datacloud_cloud-sql-postgresql-admin_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'cloud-sql-postgres-admin',
    '--stdio'
  ],
  'env': {},
},
'datacloud_cloud-sql-postgresql_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'cloud-sql-postgres',
    '--stdio'
  ],
  'env': {
    'CLOUD_SQL_POSTGRES_DATABASE': '',
    'CLOUD_SQL_POSTGRES_INSTANCE': '',
    'CLOUD_SQL_POSTGRES_IP_TYPE': '',
    'CLOUD_SQL_POSTGRES_PASSWORD': '',
    'CLOUD_SQL_POSTGRES_PROJECT': '',
    'CLOUD_SQL_POSTGRES_REGION': '',
    'CLOUD_SQL_POSTGRES_USER': '',
  },
},

Knowledge Catalog

Telecomando

'datacloud_knowledge_catalog_remote': {
  serverUrl: 'https://dataplex.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: ['https://www.googleapis.com/auth/cloud-platform'],
  },
},

Locale

'datacloud_knowledge_catalog_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'dataplex',
    '--stdio'
  ],
  'env': {
      'DATAPLEX_PROJECT': '${PROJECT_ID}',
    }

Managed Service for Apache Spark

Telecomando

'datacloud_managed_apache_spark_remote': {
          serverUrl: 'https://dataproc-${REGION}.googleapis.com/mcp',
          authProviderType: 'google_credentials',
          oauth: {
            scopes: ['https://www.googleapis.com/auth/dataproc'],
          },
        },

Locale

'datacloud_managed_apache_spark_toolbox': {
        '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
        'command': 'npx',
        'args': [
          '-y',
          TOOLBOX_VERSION,
          '--prebuilt',
          'dataproc',
          '--stdio',
          '--user-agent-metadata',
          'google-cloud-data-agent-kit-${IDE_TYPE}',
        ],
        'env': {
          'DATAPROC_PROJECT': '${PROJECT_ID}',
          'DATAPROC_REGION': '${REGION}',
        },
      },
      'datacloud_serverless-spark_toolbox': {
        '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
        'command': 'npx',
        'args': [
          '-y',
          TOOLBOX_VERSION,
          '--prebuilt',
          'serverless-spark',
          '--stdio',
          '--user-agent-metadata',
          'google-cloud-data-agent-kit-${IDE_TYPE}',
        ],
        'env': {
          'SERVERLESS_SPARK_PROJECT': '${PROJECT_ID}',
          'SERVERLESS_SPARK_LOCATION': '${REGION}',
        },
      },

Spanner

Telecomando

'datacloud_spanner_remote': {
  serverUrl: 'https://spanner.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: [
      'https://www.googleapis.com/auth/spanner.admin',
      'https://www.googleapis.com/auth/spanner.data',
    ],
  },
},

Locale

'datacloud_spanner_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'spanner',
    '--stdio'
  ],
  'env': {
    'SPANNER_DATABASE': '',
    'SPANNER_DIALECT': '',
    'SPANNER_INSTANCE': '',
    'SPANNER_PROJECT': '',
  },
},

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 delle tue 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 tue 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

Devi abilitare le API Model Armor prima di poter utilizzare 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 remoti e di Google Google Cloud

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 del 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 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:

  • L'entità
  • Proprietà dello strumento 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.

Risoluzione dei problemi

Per trovare metodi per diagnosticare e risolvere gli errori dell'estensione Data Agent Kit per Antigravity IDE, consulta Risoluzione dei problemi.

Passaggi successivi