Utilizza il server MCP BigQuery

Questo documento mostra come utilizzare il server Model Context Protocol (MCP) remoto di BigQuery per connettersi ad applicazioni AI, tra cui Gemini CLI, ChatGPT, Claude e applicazioni personalizzate che stai sviluppando. Puoi utilizzare il server MCP remoto di BigQuery per eseguire attività come l'esecuzione di query, il recupero di metadati e l'elenco delle risorse.

Il server MCP remoto BigQuery viene attivato quando attivi l'API BigQuery.

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.

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

  • Devi creare uno strumento personalizzato su una query SQL con parametri.
  • Non disponi delle autorizzazioni per abilitare o utilizzare il server MCP nel tuo progetto.

Per saperne di più su come utilizzare il nostro server MCP locale, consulta Connettere i LLM a BigQuery con MCP. Le sezioni seguenti si applicano solo al server MCP BigQuery.

Google e Cloud de Confiance by S3NS server MCP remoti

Google e i Cloud de Confiance by S3NS 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. In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance 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

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

  3. Abilita l'API BigQuery.

    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

    Per i nuovi progetti, l'API BigQuery viene abilitata automaticamente.

  4. (Facoltativo) Abilita la fatturazione per il progetto. Se non vuoi attivare la fatturazione o fornire una carta di credito, i passaggi descritti in questo documento funzionano comunque. BigQuery ti offre una sandbox per eseguire i passaggi. Per saperne di più, vedi Attiva la sandbox di BigQuery.

Ruoli obbligatori

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

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

Autorizzazioni obbligatorie

Per utilizzare il server BigQuery MCP sono necessarie le seguenti autorizzazioni:

  • Effettua chiamate allo strumento MCP: mcp.tools.call
  • Esegui job BigQuery: bigquery.jobs.create
  • Esegui query sui dati BigQuery: bigquery.tables.getData

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

A seconda dell'attività, potrebbero essere necessarie autorizzazioni BigQuery aggiuntive. Per informazioni sulle autorizzazioni BigQuery, consulta Ruoli e autorizzazioni IAM di BigQuery.

Autenticazione e autorizzazione

I server MCP BigQuery utilizzano il protocollo OAuth 2.0 con IAM per l'autenticazione e l'autorizzazione. Tutte le Cloud de Confiance by S3NS identità sono supportate per l'autenticazione ai server MCP.

Il server MCP BigQuery non accetta chiavi API.

Ambiti OAuth di BigQuery MCP

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, consulta Utilizzare OAuth 2.0 per accedere alle API di Google.

BigQuery ha i seguenti ambiti OAuth dello strumento MCP:

URI dell'ambito per gcloud CLI Descrizione
https://www.googleapis.com/auth/bigquery Visualizzare e gestire i tuoi dati in BigQuery, nonché vedere l'indirizzo email del tuo Account Google.

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 BigQuery, consulta Ambiti OAuth 2.0 per l'API BigQuery v2.

Configurare un client MCP per utilizzare il server MCP BigQuery

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, il client MCP deve conoscere almeno l'URL del server MCP.

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

Per il server MCP BigQuery, inserisci quanto segue in base alle tue esigenze:

  • Nome server: server BigQuery MCP
  • URL server o Endpoint: https://bigquery.googleapis.com/mcp
  • Trasporto: HTTP
  • Dettagli di autenticazione: le tue Cloud de Confiance by S3NS credenziali, il tuo ID client OAuth e il tuo client secret OAuth oppure un'identità e credenziali dell'agente

    I dettagli di autenticazione che scegli dipendono dal metodo di autenticazione che vuoi utilizzare. Per maggiori informazioni, consulta Eseguire l'autenticazione nei 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 MCP BigQuery, consulta il riferimento MCP BigQuery.

Limitazioni

Gli strumenti BigQuery MCP sono soggetti alle seguenti limitazioni:

  • Gli strumenti execute_sql e execute_sql_readonly non supportano le query sulle tabelle esterne di Google Drive.
  • Per impostazione predefinita, gli strumenti execute_sql e execute_sql_readonly limitano il tempo di elaborazione delle query a tre minuti. Le query che vengono eseguite per più di tre minuti vengono annullate automaticamente.
  • I risultati della query sono limitati a un massimo di 3000 righe.
  • Lo strumento execute_sql_readonly consente solo operazioni di sola lettura sui dati. Le mutazioni come le istruzioni DML, le istruzioni DDL e le UDF Python non sono supportate.

Strumenti per le liste

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

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

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

Negare l'accesso agli strumenti

L'unico strumento MCP che non è di sola lettura è execute_sql. Puoi limitare l'accesso allo strumento execute_sql creando una policy di negazione che limiti l'utilizzo dello strumento MCP in lettura/scrittura.

Esempi di casi d'uso

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

  • Crea flussi di lavoro che utilizzano gli approfondimenti dei dati BigQuery per attivare determinate azioni, come la creazione di problemi e la composizione di email.

  • Utilizza le funzionalità avanzate di BigQuery, come la previsione, per ottenere approfondimenti di ordine superiore.

  • Crea un'esperienza conversazionale per i tuoi utenti con istruzioni personalizzate per l'agente.

Prompt di esempio

Puoi utilizzare i seguenti prompt di esempio per ottenere informazioni sulle risorse BigQuery, ricavare approfondimenti e analizzare i dati BigQuery:

  • "Elenca i set di dati nel progetto PROJECT_ID."
  • "Trova tutte le query che ho eseguito nel progetto PROJECT_ID utilizzando il server MCP nella regione REGION. Utilizza il tag goog-mcp-server:true per identificare i job di query eseguiti tramite il server MCP."
  • "Trova i principali ordini per volume di DATASET_ID nel progetto PROJECT_ID. Identifica le tabelle appropriate, trova lo schema corretto e mostra i risultati."
  • "Crea una previsione nella tabella PROJECT_ID.DATASET_ID.TABLE_ID per gli anni futuri. Utilizza COLUMN_NAME come colonna di dati e COLUMN_NAME come colonna del timestamp. Mostra le prime 10 previsioni".

Nei prompt, sostituisci quanto segue:

  • PROJECT_ID: l' Cloud de Confiance ID progetto
  • REGION: il nome della regione
  • DATASET_ID: il nome del set di dati
  • TABLE_ID: il nome della tabella
  • COLUMN_NAME: il nome della colonna

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, Cloud de Confiance by S3NS offre impostazioni predefinite e policy personalizzabili per controllare l'utilizzo degli strumenti MCP nella tua organizzazione o nel tuo progetto Cloud de Confiance by S3NS.

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

Utilizzare Model Armor

Model Armor è un servizioCloud de Confiance by S3NS 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. Installa Google Cloud CLI, quindi accedi a gcloud CLI con la tua identità federata. Dopo aver eseguito l'accesso, inizializza Google Cloud CLI eseguendo il comando seguente:

    gcloud init

  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 Cloud de Confiance by S3NS

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 Cloud de Confiance .

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

Per impedire a Model Armor di analizzare automaticamente il traffico da e verso i server MCP di Google 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 Cloud de Confiance . 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 di Identity and Access Management (IAM) ti aiutano a proteggere Cloud de Confiance by S3NS 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à 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.

Quote e limiti

Il server MCP BigQuery non ha quote proprie. Non esiste un limite al numero di chiamate che possono essere effettuate al server MCP.

Sei comunque soggetto alle quote applicate dalle API chiamate dagli strumenti server MCP. I seguenti metodi API vengono chiamati dagli strumenti del server MCP:

Strumento Metodo API Quote
list_dataset_ids datasets.list Quote e limiti dei set di dati
list_table_ids tables.list Quote e limiti delle tabelle
get_dataset_info datasets.get Quote e limiti dei set di dati
get_table_info tables.get Quote e limiti delle tabelle
execute_sql jobs.Query Quote e limiti dei job di query
execute_sql_readonly jobs.Query Quote e limiti dei job di query

Per saperne di più sulle quote di BigQuery, consulta Quote e limiti.

Passaggi successivi