Utiliser le serveur MCP BigQuery
Ce document explique comment utiliser le serveur BigQuery Model Context Protocol (MCP) pour se connecter à BigQuery à partir d'applications d'IA telles que la CLI Gemini, le mode agent dans Gemini Code Assist, Claude Code ou dans les applications d'IA que vous développez.
Le Model Context Protocol (MCP) standardise la façon dont les grands modèles de langage (LLM) et les applications ou agents d'IA se connectent à des sources de données externes. Les serveurs MCP vous permettent d'utiliser leurs outils, ressources et requêtes pour effectuer des actions et obtenir des données à jour à partir de leur service de backend.
Les serveurs MCP locaux s'exécutent généralement sur votre machine locale et utilisent les flux d'entrée et de sortie standards (stdio) pour la communication entre les services sur le même appareil. Les serveurs MCP s'exécutent sur l'infrastructure du service et proposent un point de terminaison HTTPS aux applications d'IA pour la communication entre le client MCP d'IA et le serveur MCP. Pour en savoir plus sur l'architecture MCP, consultez Architecture MCP.
Les serveurs Google et Google Cloud MCP présentent les fonctionnalités et avantages suivants :
- Découverte simplifiée et centralisée
- Points de terminaison HTTPS mondiaux ou régionaux gérés
- Autorisations précises
- Sécurité facultative des requêtes et des réponses avec la protection Model Armor
- Journalisation d'audit centralisée
Pour en savoir plus sur les autres serveurs MCP et sur les contrôles de sécurité et de gouvernance disponibles pour les serveurs MCP Google Cloud, consultez la présentation des serveurs MCP Google Cloud.
Vous pouvez utiliser le serveur MCP local BigQuery pour les raisons suivantes :
- Vous devez créer un outil personnalisé sur une requête SQL paramétrée.
- Vous ne disposez pas des autorisations nécessaires pour activer ni utiliser le serveur MCP dans votre projet.
Pour en savoir plus sur l'utilisation de notre serveur MCP local, consultez Connecter des LLM à BigQuery avec MCP. Les sections suivantes ne s'appliquent qu'au serveur MCP BigQuery.
Avant de commencer
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
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.
-
Activez l'API BigQuery.
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.Pour les nouveaux projets, l'API BigQuery est automatiquement activée.
- Facultatif : Activez la facturation pour le projet. Les étapes décrites dans ce document demeurent valables, même si vous ne souhaitez pas activer la facturation ou fournir une carte de crédit. BigQuery fournit un bac à sable permettant d'accomplir les étapes. Pour en savoir plus, consultez la page Activer le bac à sable BigQuery.
Rôles requis
Pour obtenir les autorisations nécessaires pour activer le serveur BigQuery MCP, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet dans lequel vous souhaitez activer le serveur BigQuery MCP :
-
Activez les API et les serveurs MCP dans le projet :
Administrateur de Service Usage (
roles/serviceusage.serviceUsageAdmin) -
Effectuer des appels d'outils MCP :
Utilisateur de l'outil MCP (
roles/mcp.toolUser) -
Pour exécuter des jobs BigQuery :
Utilisateur de job BigQuery (
roles/bigquery.jobUser) -
Pour interroger des données BigQuery :
Lecteur de données BigQuery (
roles/bigquery.dataViewer)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour activer le serveur BigQuery MCP. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour activer le serveur MCP BigQuery :
-
Activer les serveurs MCP dans un projet :
-
serviceusage.mcppolicy.get -
serviceusage.mcppolicy.update
-
-
Effectuer des appels d'outils MCP :
mcp.tools.call -
Exécuter des tâches BigQuery :
bigquery.jobs.create -
Interroger les données BigQuery :
bigquery.tables.getData
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Activer ou désactiver le serveur MCP BigQuery
Vous pouvez activer ou désactiver le serveur BigQuery MCP dans un projet à l'aide de la commande gcloud beta services mcp enable. Pour en savoir plus, consultez les sections suivantes.
Activer le serveur MCP BigQuery dans un projet
Si vous utilisez différents projets pour vos identifiants client (clés de compte de service, ID client OAuth ou clés API, par exemple) et pour héberger vos ressources, vous devez activer le service BigQuery et le serveur BigQuery MCP dans les deux projets.
Pour activer le serveur BigQuery MCP dans votre projet Google Cloud , exécutez la commande suivante :
gcloud beta services mcp enable bigquery.googleapis.com \
--project=PROJECT_ID
Remplacez les éléments suivants :
PROJECT_ID: ID du projet Google Cloud
Le serveur MCP BigQuery est activé pour être utilisé dans votre projetGoogle Cloud . Si le service BigQuery n'est pas activé pour votre projet Google Cloud , vous êtes invité à l'activer avant d'activer le serveur BigQuery MCP.
Pour respecter les bonnes pratiques de sécurité, nous vous recommandons d'activer les serveurs MCP uniquement pour les services nécessaires au fonctionnement de votre application d'IA.
Désactiver le serveur MCP BigQuery dans un projet
Pour désactiver le serveur MCP BigQuery dans votre projet Google Cloud , exécutez la commande suivante :
gcloud beta services mcp disable bigquery.googleapis.com \
--project=PROJECT_ID
Le serveur MCP BigQuery est désactivé pour votre projetGoogle Cloud .
Authentification et autorisation
Les serveurs MCP BigQuery utilisent le protocole OAuth 2.0 avec Identity and Access Management (IAM) pour l'authentification et l'autorisation. Toutes les identitésGoogle Cloud sont acceptées pour l'authentification auprès des serveurs MCP.
Le serveur MCP BigQuery n'accepte pas les clés API.
Champs d'application OAuth BigQuery MCP
OAuth 2.0 utilise des niveaux d'accès et des identifiants pour déterminer si un compte principal authentifié est autorisé à effectuer une action spécifique sur une ressource. Pour en savoir plus sur les champs d'application OAuth 2.0 chez Google, consultez Utiliser OAuth 2.0 pour accéder aux API Google.
BigQuery dispose des niveaux d'accès OAuth suivants pour l'outil MCP :
| URI du champ d'application pour gcloud CLI | Description |
|---|---|
https://www.googleapis.com/auth/bigquery |
Consulter et gérer vos données dans BigQuery, et voir l'adresse e-mail de votre compte Google. |
Des champs d'application supplémentaires peuvent être requis pour les ressources auxquelles l'outil accède lors d'un appel. Pour afficher la liste des niveaux d'accès requis pour BigQuery, consultez Niveaux d'accès OAuth 2.0 pour l'API BigQuery v2.
Configurer un client MCP pour qu'il utilise le serveur MCP BigQuery
Les programmes hôtes, tels que Claude ou Gemini CLI, peuvent instancier des clients MCP qui se connectent à un seul serveur MCP. Un programme hôte peut avoir plusieurs clients qui se connectent à différents serveurs MCP. Pour se connecter à un serveur MCP, le client MCP doit connaître au minimum l'URL du serveur MCP.
Dans votre hôte, recherchez un moyen de vous connecter à un serveur MCP. Vous êtes invité à saisir des informations sur le serveur, comme son nom et son URL.
Pour le serveur MCP BigQuery, saisissez les informations requises :
- Nom du serveur : serveur BigQuery MCP
- URL du serveur ou Point de terminaison : https://bigquery.googleapis.com/mcp
- Transport : HTTP
Informations d'authentification : vos identifiants Google Cloud , votre ID client et code secret OAuth, ou l'identité et les identifiants d'un agent
Les informations d'authentification que vous choisissez dépendent de la manière dont vous souhaitez vous authentifier. Pour en savoir plus, consultez S'authentifier auprès des serveurs MCP.
Pour obtenir des conseils spécifiques à un hébergeur, consultez les articles suivants :
- Configurer un serveur MCP Gemini CLI
- Assistance Claude : Premiers pas avec les connecteurs personnalisés à l'aide de MCP à distance
Pour obtenir des conseils plus généraux, consultez Se connecter à des serveurs MCP distants.
Outils disponibles
Pour afficher les détails des outils MCP disponibles et leurs descriptions pour le serveur MCP BigQuery, consultez la documentation de référence sur le serveur MCP BigQuery.
Limites
Les outils MCP BigQuery sont soumis aux limitations suivantes :
- L'outil
execute_sqln'est pas compatible avec l'interrogation des tables externes Google Drive. - Par défaut, l'outil
execute_sqllimite le temps de traitement des requêtes à trois minutes. Les requêtes qui durent plus de trois minutes sont automatiquement annulées. - Les résultats de la requête sont limités à 3 000 lignes maximum.
Outils de liste
Utilisez l'inspecteur MCP pour lister les outils ou envoyez une requête HTTP tools/list directement au serveur MCP BigQuery.
La méthode tools/list ne nécessite pas d'authentification.
POST /mcp HTTP/1.1
Host: bigquery.googleapis.com
Content-Type: application/json
{
"jsonrpc": "2.0",
"method": "tools/list",
}
Exemples de cas d'utilisation
Voici quelques exemples de cas d'utilisation du serveur MCP BigQuery :
Créez des workflows qui utilisent les insights issus des données BigQuery pour déclencher certaines actions, comme la création de problèmes et la rédaction d'e-mails.
Utilisez les fonctionnalités avancées de BigQuery, comme les prévisions, pour obtenir des insights de niveau supérieur.
Créez une expérience conversationnelle pour vos utilisateurs grâce à des instructions personnalisées pour l'agent.
Exemples de requêtes
Vous pouvez utiliser les exemples de requêtes suivants pour obtenir des informations sur les ressources BigQuery, obtenir des insights et analyser les données BigQuery :
- Répertoriez les ensembles de données du projet
PROJECT_ID. - Trouve toutes les requêtes que j'ai exécutées dans le projet
PROJECT_IDà l'aide du serveur MCP dans la régionREGION. Utilisez le taggoog-mcp-server:truepour identifier les tâches de requête exécutées via le serveur MCP. - Trouve les commandes les plus importantes en volume à partir du
DATASET_IDdans le projetPROJECT_ID. Identifie les tables appropriées, trouve le bon schéma et affiche les résultats. - Créez une prévision dans le tableau
PROJECT_ID.DATASET_ID.TABLE_IDpour les années à venir. UtilisezCOLUMN_NAMEcomme colonne de données etCOLUMN_NAMEcomme colonne d'horodatage. Affichez les 10 premières prévisions.
Dans les requêtes, remplacez les éléments suivants :
PROJECT_ID: ID du projet Google CloudREGION: nom de la régionDATASET_ID: nom de l'ensemble de donnéesTABLE_ID: nom de la tableCOLUMN_NAME: nom de la colonne
Configurations de sécurité et de protection facultatives
Le MCP introduit de nouveaux risques et considérations de sécurité en raison de la grande variété d'actions que vous pouvez effectuer avec les outils MCP. Pour minimiser et gérer ces risques,Google Cloud propose des paramètres par défaut et des règles personnalisables permettant de contrôler l'utilisation des outils MCP dans votre organisation ou votre projet Google Cloud.
Pour en savoir plus sur la sécurité et la gouvernance de MCP, consultez Sécurité et sûreté de l'IA.
Utiliser Model Armor
Model Armor est un service Google Cloud conçu pour améliorer la sécurité de vos applications d'IA. Il fonctionne en analysant de manière proactive les requêtes et les réponses des LLM, en protégeant contre divers risques et en favorisant les pratiques d'IA responsable. Que vous déployiez l'IA dans votre environnement cloud ou chez des fournisseurs de services cloud externes, Model Armor peut vous aider à prévenir les entrées malveillantes, à vérifier la sécurité du contenu, à protéger les données sensibles, à assurer la conformité et à appliquer vos règles de sécurité et de protection de l'IA de manière cohérente dans votre paysage d'IA diversifié.
Model Armor n'est disponible que dans certaines régions. Si Model Armor est activé pour un projet et qu'un appel à ce projet provient d'une région non prise en charge, Model Armor effectue un appel interrégional. Pour en savoir plus, consultez Emplacements de Model Armor.
Activer Model Armor
Vous devez activer les API Model Armor avant de pouvoir utiliser Model Armor.
Console
Activer l'API Model Armor
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.Sélectionnez le projet dans lequel vous souhaitez activer Model Armor.
gcloud
Avant de commencer, suivez ces étapes à l'aide de la Google Cloud CLI avec l'API Model Armor :
Dans la console Google Cloud , activez Cloud Shell.
En bas de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
-
Exécutez la commande suivante pour définir le point de terminaison de l'API pour le service Model Armor.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
Remplacez
LOCATIONpar la région dans laquelle vous souhaitez utiliser Model Armor.
Configurer la protection pour les serveurs MCP Google et Google Cloud distants
Pour protéger les appels et les réponses de vos outils MCP, vous pouvez utiliser les paramètres de plancher Model Armor. Un paramètre de plancher définit les filtres de sécurité minimaux qui s'appliquent à l'ensemble du projet. Cette configuration applique un ensemble cohérent de filtres à tous les appels et réponses d'outils MCP du projet.
Configurez un paramètre plancher Model Armor avec la désinfection MCP activée. Pour en savoir plus, consultez Configurer les paramètres de plancher Model Armor.
Consultez l'exemple de commande suivant :
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"}]'
Remplacez PROJECT_ID par l'ID du projet Google Cloud .
Notez les paramètres suivants :
INSPECT_AND_BLOCK: type d'application qui inspecte le contenu du serveur MCP Google et bloque les requêtes et les réponses qui correspondent aux filtres.ENABLED: paramètre qui active un filtre ou une application forcée.MEDIUM_AND_ABOVE: niveau de confiance pour les paramètres du filtre "IA responsable – Dangereux". Vous pouvez modifier ce paramètre, mais des valeurs plus faibles peuvent entraîner davantage de faux positifs. Pour en savoir plus, consultez Niveaux de confiance de Model Armor.
Désactiver l'analyse du trafic MCP avec Model Armor
Si vous souhaitez arrêter d'analyser le trafic Google MCP avec Model Armor, exécutez la commande suivante :
gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--remove-integrated-services=GOOGLE_MCP_SERVER
Remplacez PROJECT_ID par l'ID du projet Google Cloud .
Model Armor n'analysera pas le trafic MCP dans le projet.
Contrôler l'utilisation du MCP avec des stratégies de refus IAM
Les stratégies de refus Identity and Access Management (IAM) vous aident à sécuriser les serveurs MCP à distance. Google Cloud Configurez ces règles pour bloquer l'accès indésirable aux outils MCP.
Par exemple, vous pouvez refuser ou autoriser l'accès en fonction des critères suivants :
- Le principal
- Propriétés de l'outil, comme la lecture seule
- ID client OAuth de l'application
Pour en savoir plus, consultez Contrôler l'utilisation de MCP avec Identity and Access Management.
Quotas et limites
Le serveur MCP BigQuery ne dispose pas de ses propres quotas. Le nombre d'appels pouvant être effectués sur le serveur MCP n'est pas limité.
Vous restez soumis aux quotas appliqués par les API appelées par les outils serveur MCP. Les méthodes d'API suivantes sont appelées par les outils du serveur MCP :
| Outil | Méthode API | Quotas |
|---|---|---|
list_dataset_ids |
datasets.list |
Quotas et limites des ensembles de données |
list_table_ids |
tables.list |
Quotas et limites des tables |
get_dataset_info |
datasets.get |
Quotas et limites des ensembles de données |
get_table_info |
tables.get |
Quotas et limites des tables |
execute_sql |
jobs.Query |
Quotas et limites des jobs de requête |
Pour en savoir plus sur les quotas BigQuery, consultez la page Quotas et limites.
Étapes suivantes
- Consultez la documentation de référence sur BigQuery MCP.
- En savoir plus sur les serveurs MCP Google Cloud
- Consultez les produits compatibles avec MCP.