Utilizzare il server MCP BigQuery
Questo documento descrive come utilizzare il server BigQuery Model Context Protocol (MCP) per connettersi a BigQuery da applicazioni AI come Gemini CLI, la modalità agente in Gemini Code Assist, Claude Code o nelle applicazioni AI che stai sviluppando.
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.
I 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. I server MCP vengono eseguiti sull'infrastruttura del servizio e offrono un endpoint HTTPS 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 i server Google Cloud MCP hanno le seguenti funzionalità e vantaggi:
- Individuazione semplificata e centralizzata
- Endpoint HTTPS 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.
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.
Prima di iniziare
- 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.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
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.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
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.
-
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'autorizzazioneserviceusage.services.enable. Scopri come concedere i ruoli.Per i nuovi progetti, l'API BigQuery viene abilitata automaticamente.
- (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 abilitare il server BigQuery MCP, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto in cui vuoi abilitare il server BigQuery MCP:
-
Abilita le API e i server MCP nel progetto:
Amministrazione Service Usage (
roles/serviceusage.serviceUsageAdmin) -
Effettua chiamate allo strumento MCP:
Utente dello strumento MCP (
roles/mcp.toolUser) -
Esegui job BigQuery:
Utente job BigQuery (
roles/bigquery.jobUser) -
Esegui query sui dati BigQuery:
Visualizzatore dati BigQuery (
roles/bigquery.dataViewer)
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 attivare il server BigQuery MCP. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per abilitare il server BigQuery MCP sono necessarie le seguenti autorizzazioni:
-
Abilita i server MCP in un progetto:
-
serviceusage.mcppolicy.get -
serviceusage.mcppolicy.update
-
-
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.
Attivare o disattivare il server MCP BigQuery
Puoi attivare o disattivare il server MCP BigQuery in un progetto
con il comando gcloud beta services mcp enable. Per saperne di più, consulta le sezioni seguenti.
Abilitare il server MCP BigQuery in un progetto
Se utilizzi progetti diversi per le credenziali client, ad esempio chiavi dell'account di servizio, ID client OAuth o chiavi API, e per l'hosting delle risorse, devi abilitare il servizio BigQuery e il server MCP BigQuery in entrambi i progetti.
Per attivare il server BigQuery MCP nel tuo progetto Google Cloud , esegui il seguente comando:
gcloud beta services mcp enable bigquery.googleapis.com \
--project=PROJECT_ID
Sostituisci quanto segue:
PROJECT_ID: l' Google Cloud ID progetto
Il server BigQuery MCP è abilitato per l'utilizzo nel tuo progettoGoogle Cloud . Se il servizio BigQuery non è abilitato per il tuo progetto Google Cloud , ti viene chiesto di abilitarlo prima di abilitare il server BigQuery MCP.
Come best practice di sicurezza, ti consigliamo di abilitare i server MCP solo per i servizi necessari per il funzionamento della tua applicazione di AI.
Disattivare il server MCP BigQuery in un progetto
Per disattivare il server BigQuery MCP nel tuo progetto Google Cloud , esegui il seguente comando:
gcloud beta services mcp disable bigquery.googleapis.com \
--project=PROJECT_ID
Il server BigQuery MCP è disabilitato per l'utilizzo nel tuo progettoGoogle Cloud .
Autenticazione e autorizzazione
I server MCP BigQuery 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 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, leggi 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 Google Cloud 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:
- Configurazione del server MCP di Gemini CLI
- Supporto di Claude: guida introduttiva ai connettori personalizzati che utilizzano MCP remoto
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:
- Lo strumento
execute_sqlnon supporta l'esecuzione di query sulle tabelle esterne di Google Drive. - Per impostazione predefinita, lo strumento
execute_sqllimita il tempo di elaborazione delle query a tre minuti. Le query eseguite per più di tre minuti vengono annullate automaticamente. - I risultati della query sono limitati a un massimo di 3000 righe.
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",
}
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_IDutilizzando il server MCP nella regioneREGION. Utilizza il taggoog-mcp-server:trueper identificare i job di query eseguiti tramite il server MCP. - Trova gli ordini con il volume più alto di
DATASET_IDnel progettoPROJECT_ID. Identifica le tabelle appropriate, trova lo schema corretto e mostra i risultati. - Crea una previsione nella tabella
PROJECT_ID.DATASET_ID.TABLE_IDper gli anni futuri. UtilizzaCOLUMN_NAMEcome colonna dei dati eCOLUMN_NAMEcome colonna dei timestamp. Mostra le prime 10 previsioni.
Nei prompt, sostituisci quanto segue:
PROJECT_ID: l' Google Cloud ID progettoREGION: il nome della regioneDATASET_ID: il nome del set di datiTABLE_ID: il nome della tabellaCOLUMN_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 intraprendere 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 Google Cloud organizzazione o nel tuo progetto.
Per saperne di più sulla sicurezza e sulla governance di MCP, consulta Sicurezza e protezione dell'AI.
Utilizzare Model Armor
Model Armor è un servizio Google Cloud progettato per migliorare la sicurezza delle tue applicazioni AI. Funziona controllando in modo proattivo i prompt e le risposte dei LLM, proteggendo da vari rischi e supportando pratiche di AI responsabile. Che tu esegua 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 in modo coerente le tue norme di sicurezza dell'AI nel tuo panorama AI diversificato.
Model Armor è disponibile solo in località regionali specifiche. Se Model Armor è abilitato per un progetto e una chiamata a questo progetto proviene da una regione non supportata, Model Armor effettua una chiamata tra regioni. Per maggiori informazioni, consulta Località di Model Armor.
Abilita Model Armor
Prima di poter utilizzare Model Armor, devi abilitare le API Model Armor.
Console
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'autorizzazioneserviceusage.services.enable. Scopri come concedere i ruoli.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:
Nella console Google Cloud , 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.
-
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
LOCATIONcon 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.
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 |
Per saperne di più sulle quote di BigQuery, consulta Quote e limiti.
Passaggi successivi
- Leggi la documentazione di riferimento di BigQuery MCP.
- Scopri di più sui server MCP di Google Cloud.
- Consulta i prodotti supportati da MCP.