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 alle origini dati esterne. I server MCP ti consentono di utilizzare i loro strumenti, le loro risorse e i loro 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 tua macchina locale e utilizzano gli stream di input e output standard (stdio) per la comunicazione tra i servizi sullo stesso dispositivo.
- Server MCP remoti
- Esegui l'applicazione sull'infrastruttura del servizio e offri 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.
Core stateless
Con la versione MCP 2026-07-28, MCP passa da un protocollo bidirezionale stateful a un protocollo stateless.
Ogni richiesta MCP è autodescrittiva e può essere instradata utilizzando le intestazioni. Non è necessario l'handshake initialize/initialized o Mcp-Session-Id perché ogni richiesta include tutte le informazioni necessarie nelle intestazioni HTTP o nel parametro _meta. I server MCP possono richiedere informazioni aggiuntive necessarie per uno strumento tramite richieste di andata e ritorno multiple (MRTR).
Per facilitare l'instradamento e l'elaborazione delle richieste senza analizzare il corpo della richiesta, sono necessarie alcune intestazioni MCP, tra cui:
- Intestazioni richieste dalla specifica MCP, come l'intestazione della versione del protocollo e le intestazioni della richiesta standard.
- Intestazioni personalizzate
definite dal server MCP. Queste intestazioni vengono replicate nelle intestazioni HTTP dallo schema di input dello strumento utilizzando la proprietà
x-mcp-header. Ad esempio, un server MCP potrebbe definire un'intestazione personalizzata per specificare la regione o l'ID progetto Google Cloud .
Per saperne di più sull'architettura MCP, consulta la specifica della versione 2026-07-28 di MCP e le modifiche principali.
Server MCP Google e remoti ( Google Cloud )
I server MCP di Google e Google Cloud remoti offrono le seguenti funzionalità e i seguenti vantaggi:- Rilevamento semplificato e centralizzato
- Endpoint HTTP globali o regionali gestiti
- Autorizzazione granulare
- Sicurezza facoltativa di prompt e risposte con la protezione di 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
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the BigQuery and Dataform APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.- Connetti il tuo repository Dataform a un provider Git come GitHub o GitLab. Per saperne di più, consulta Connettiti a un repository Git di terze parti.
- Configura l'agente AI con un token OAuth valido utilizzando l'ambito BigQuery.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per utilizzare il server MCP di Dataform, chiedi all'amministratore di concederti i seguenti ruoli IAM nel tuo progetto Google Cloud :
-
Effettuare chiamate allo strumento MCP:
MCP Tool User (
roles/mcp.toolUser) -
Creare repository e aree di lavoro Dataform e modificare i file:
Dataform Editor (
roles/dataform.editor) -
Eseguire job BigQuery:
Utente job BigQuery (
roles/bigquery.jobUser)
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 di Dataform. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per utilizzare il server MCP di Dataform sono necessarie le seguenti autorizzazioni:
-
Effettua chiamate allo strumento MCP:
mcp.tools.call -
Creare repository e aree di lavoro Dataform e modificare i file:
-
dataform.workspaces.create -
dataform.workspaces.get -
dataform.workspaces.list -
dataform.workspaces.delete -
dataform.workspaces.readFile -
dataform.workspaces.writeFile -
dataform.workspaces.moveFile -
dataform.workspaces.removeFile -
dataform.workspaces.queryDirectoryContents -
dataform.workspaces.searchFiles -
dataform.workspaces.commit -
dataform.workspaces.push -
dataform.workspaces.pull -
dataform.workspaces.fetchHistory -
dataform.workspaces.fetchDiff -
dataform.workspaces.fetchFileGitStatuses -
dataform.compilationResults.create -
dataform.compilationResults.get -
dataform.compilationResults.list -
dataform.workflowInvocations.create -
dataform.workflowInvocations.get -
dataform.workflowInvocations.list -
dataform.repositories.get -
dataform.repositories.list -
dataform.repositories.update -
dataform.folders.create -
dataform.locations.get -
dataform.locations.list
-
-
Esegui job BigQuery:
-
bigquery.jobs.create -
bigquery.config.get
-
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Autenticazione e autorizzazione
Il server MCP remoto di Dataform utilizza il protocollo OAuth 2.0 con Identity and Access Management (IAM) per l'autenticazione e l'autorizzazione. Tutte le identitàGoogle Cloud sono supportate per l'autenticazione ai server MCP.Il server MCP Dataform gestisce l'accesso tramite i seguenti meccanismi di autenticazione e autorizzazione:
- Le richieste di discovery (
tools/list) non richiedono l'autenticazione, il che consente agli agenti di identificare gli strumenti Dataform disponibili senza bisogno di un'autorizzazione preventiva. - Le richieste di esecuzione (
tools/call) vengono autenticate utilizzando OAuth, che richiede all'agente di fornire un token OAuth valido che utilizza l'ambito BigQuery. Per saperne di più, consulta Ambiti OAuth di Dataform 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 Esegui l'autenticazione ai server MCP.
Ambiti OAuth di Dataform MCP
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 di Google, consulta Utilizzare OAuth 2.0 per accedere alle API di Google.
Per interagire con il server MCP Dataform, l'agente deve utilizzare l'ambito OAuth di BigQuery. Questo ambito consente all'agente di gestire il codice di trasformazione e attivare le esecuzioni che vengono eseguite come job BigQuery.
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 Dataform, consulta API Dataform.
Configura un client MCP per utilizzare il server MCP di Dataform
Le applicazioni e gli agenti AI, come Claude o Antigravity, possono creare un'istanza di un client MCP che si connette a un singolo server MCP. Un'applicazione di AI può avere più client che si connettono a server MCP diversi. Se la tua applicazione non è elencata nelle indicazioni specifiche per il client, puoi utilizzare le seguenti informazioni per connetterti dalla maggior parte delle applicazioni.
Nella tua applicazione di AI, cerca un modo per aggiungere o connetterti a un server MCP remoto. Per il server MCP Dataform, segui questi passaggi:
- Nome server: server MCP Dataform
URL server o Endpoint:
https://dataform.REGION.rep.googleapis.com/mcpSostituisci
REGIONcon la regione in cui si trova il repository, ad esempious-central1.Trasporto: HTTP trasmissibile in streaming
Dettagli di autenticazione: a seconda di come vuoi eseguire l'autenticazione, puoi inserire le tue credenziali Google Cloud , l'ID client e il secret OAuth o un'identità e le credenziali dell'agente. Per saperne di più sull'autenticazione, consulta Autenticati ai server MCP.
Ambito OAuth: l'ambito OAuth 2.0 che vuoi utilizzare per la connessione al server MCP di Dataform.
Per indicazioni specifiche sull'applicazione per la configurazione e la connessione al server MCP, consulta Indicazioni specifiche per il client.
Per indicazioni più generali, consulta le seguenti risorse:
Funzionalità dell'agente
Il server MCP Dataform fornisce un insieme di strumenti che consentono agli agenti AI di interagire con i workflow di trasformazione dei dati ed eseguirne il debug orchestrando le chiamate API Dataform. Il server fornisce strumenti per eseguire le seguenti operazioni:
- Crea il codice della pipeline. Gli agenti possono creare ed elencare workspace di sviluppo, cercare e modificare più file ed eseguire il commit o il push delle modifiche a provider Git remoti come GitHub o GitLab.
- Configura gli asset di un singolo file. Gli agenti gestiscono le configurazioni di base delle risorse, tra cui la creazione di repository e le query sui contenuti delle directory.
- Gestisci pipeline e release. Gli agenti gestiscono le configurazioni di workflow e release, generano i risultati della compilazione e attivano o annullano le chiamate del workflow.
- Risolvi i problemi ed esegui la convalida. Gli agenti identificano il motivo per cui le pipeline non vanno a buon fine recuperando i risultati della compilazione ed eseguendo query sulle azioni di chiamata del workflow.
Per i repository connessi a un host Git remoto, l'agente deve utilizzare strumenti dell'area di lavoro come create_workspace e commit_workspace_changes per lo sviluppo della pipeline. Gli strumenti di repository diretto non funzionano su questi repository, perché sono destinati solo ad asset di un singolo file nei repository ospitati da Google.
Strumenti disponibili
Per visualizzare i dettagli degli strumenti MCP disponibili e le relative descrizioni per il server MCP Dataform, consulta il riferimento MCP Dataform.
Strumenti per gli elenchi
Utilizza lo strumento di controllo MCP per elencare gli strumenti o invia una richiesta HTTP tools/list direttamente al server MCP remoto di Dataform. Il metodo tools/list non richiede l'autenticazione.
curl -X POST https://dataform.googleapis.com/TOOLSET_ENDPOINT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'MCP-Protocol-Version: MCP_PROTOCOL_VERSION' \
-H 'Mcp-Method: tools/list' \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {
"_meta": {
"io.modelcontextprotocol/protocolVersion": "MCP_PROTOCOL_VERSION",
"io.modelcontextprotocol/clientCapabilities": {
"extensions": {
"io.modelcontextprotocol/ui": {
"mimeTypes": ["text/html;profile=mcp-app"]
}
}
}
}
}
}'
Sostituisci quanto segue:
TOOLSET_ENDPOINT: il resto dell'endpoint MCP dopo il nome del servizio. Ad esempio, per Dataform, potrebbe esseremcp/toolset-name.MCP_PROTOCOL_VERSION: la versione del protocollo MCP. Ad esempio,2026-07-28.
Prompt di esempio
Utilizza i seguenti prompt di esempio per ottenere informazioni sulle risorse Dataform, creare il codice della pipeline negli spazi di lavoro, orchestrare i workflow o risolvere i problemi relativi alle esecuzioni:
- "Crea un nuovo repository Dataform denominato
REPOSITORY_IDnel progettoPROJECT_ID." - "Crea una nuova cartella denominata
FOLDER_NAMEnel mio progetto." - "Crea un nuovo workspace denominato
WORKSPACE_NAMEnel mio repository." - "Cerca i file denominati
FILE_NAMEnel mio workspace." - "Leggi i contenuti di
FILE_NAMEdalla mia area di lavoro." - "Esegui il commit delle modifiche al mio workspace e il push al branch Git remoto."
- "Crea un nuovo asset notebook nel progetto
PROJECT_ID." - "Esegui il commit delle modifiche alla mia query salvata in
REPOSITORY_ID." - "Crea una configurazione del workflow che pianifichi l'esecuzione della mia pipeline ogni giorno alle 08:00."
- "Attiva una nuova esecuzione per la configurazione del workflow
WORKFLOW_CONFIGURATION_ID." - "Controlla lo stato delle mie esecuzioni recenti della pipeline e dimmi se qualcuna non è riuscita, inclusi i dettagli dell'errore."
- "Mostrami i dettagli dell'esecuzione specifica che non è riuscita."
- "Elenca tutti i repository Dataform nella regione
REGIONdel progettoPROJECT_ID." - "Annulla la chiamata del workflow denominata
WORKFLOW_INVOCATION_IDnel repositoryREPOSITORY_ID, che è attualmente in esecuzione."
Nei prompt, sostituisci quanto segue:
FILE_NAME: il nome del file.FOLDER_NAME: il nome della cartella.PROJECT_ID: l'ID progetto Google Cloud .REGION: il nome della regione.REPOSITORY_ID: l'identificatore univoco del tuo repository Dataform, ad esempioquickstart-repository.WORKFLOW_CONFIGURATION_ID: l'identificatore univoco della configurazione del workflow.WORKFLOW_INVOCATION_ID: l'identificatore univoco di un'esecuzione specifica del workflow. Puoi ottenere questo identificatore dai risultati di una richiestaworkflowInvocations.listo dal camponamedi una rispostaworkflowInvocations.create.WORKSPACE_NAME: il nome dello spazio di lavoro.
Configurazioni di sicurezza e protezione 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.
Utilizza Model Armor
Model Armor è un servizioGoogle Cloud progettato per migliorare la sicurezza delle tue applicazioni di AI. Funziona analizzando in modo proattivo i prompt e le risposte degli LLM, proteggendo da vari rischi e supportando pratiche di AI responsabile. Che tu stia eseguendo 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 le tue policy di sicurezza e protezione dell'AI in modo coerente nel tuo panorama di AI diversificato.
Quando Model Armor è abilitato con il logging abilitato, Model Armor registra l'intero payload. Ciò potrebbe esporre informazioni sensibili nei log.
Routing delle richieste MCP a Model Armor
Il server MCP di Dataform utilizza il routing tra giurisdizioni. Quando attivi Model Armor, il server MCP invia tutte le richieste a Model Armor per il controllo. Il routing tra giurisdizioni potrebbe violare gli impegni di conformità della residenza dei dati esistenti per i dati in uso e in transito. Per saperne di più sul comportamento di altri server MCP, consulta Prodotti supportati da Model Armor.Abilita Model Armor
Per poter utilizzare Model Armor, devi abilitare le API Model Armor.
Console
Abilita l'API Model Armor, se non è già abilitata.
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre dell'autorizzazione
serviceusage.services.enable. Se hai creato il progetto, probabilmente hai già questa autorizzazione tramite il ruolo Proprietario (roles/owner). In caso contrario, puoi ottenere questa autorizzazione tramite il ruolo Amministratore Service Usage (roles/serviceusage.serviceUsageAdmin). 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:
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-
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.
Configura la protezione per i server MCP Google e Google Cloud remoti
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 a tutto il progetto. Questa configurazione applica un insieme coerente di filtri a tutte le chiamate e risposte dello strumento MCP all'interno del progetto.
Configura un'impostazione di base di Model Armor con la sanitizzazione MCP abilitata. Per saperne di più, consulta Configura 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 esamina 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 un'applicazione.MEDIUM_AND_ABOVE: il livello di confidenza per le impostazioni dei filtri di 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.
Disabilita la scansione del traffico MCP con Model Armor
Per impedire a Model Armor di scansionare 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 Google Cloud . 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 altri aspetti oltre a 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.
Controlla l'utilizzo di MCP con le policy di negazione IAM
Le policy di negazione e le policy di autorizzazione di Identity and Access Management (IAM) ti aiutano a proteggere Google Cloud e i server MCP di Google.
Puoi combinare più criteri per creare policy di sicurezza e governance personalizzate consentendo o negando l'accesso in base a quanto segue:
- L'entità.
- Proprietà dello strumento, come l'attributo di sola lettura.
- Il nome del servizio o dello strumento.
- L'ID client OAuth dell'applicazione.
Per saperne di più, consulta Controlla l'utilizzo di MCP con Identity and Access Management.
Passaggi successivi
- Leggi la documentazione di riferimento di Dataform MCP.
- Scopri di più sui server MCP di Google Cloud.