Serveur MCP géré par Looker
Le serveur MCP géré par Looker est une intégration intégrée qui inclut un serveur MCP (Model Context Protocol) directement dans la plate-forme Looker. Il permet aux agents IA (tels que la CLI Gemini, Claude Desktop, Cursor et Copilot) de se connecter de manière sécurisée à une instance Looker et d'interagir avec les données d'entreprise et les modèles LookML.
En hébergeant le serveur, Looker vous évite de déployer et de gérer votre propre infrastructure middleware. Il vous fournit une passerelle plug-and-play, sécurisée et contrôlée vers des insights commerciaux fiables.
Le serveur MCP géré par Looker est disponible en preview pour les instances Looker (Google Cloud Core) et Looker (version initiale). Les instances hébergées par le client (sur site) ne sont pas compatibles avec cet aperçu.
Si vous utilisez une instance hébergée par le client ou si vous préférez gérer votre propre infrastructure, vous pouvez vous connecter à l'aide de MCP Toolbox for Databases autonome. MCP Toolbox est un serveur MCP Open Source que vous pouvez exécuter sur votre ordinateur local ou sur votre propre serveur pour servir de passerelle entre les agents d'IA et votre instance Looker. Pour en savoir plus, consultez la page de documentation Utiliser Looker avec MCP, Gemini CLI et d'autres agents.
Avant de commencer
Pour utiliser le serveur MCP géré par Looker, vous devez remplir les conditions suivantes :
Exigences concernant les instances
- Vous devez utiliser une instance Looker (Google Cloud Core) ou Looker (version initiale).
- L'instance doit être hébergée par Looker.
Autorisations requises
- Pour gérer l'accès aux outils, vous devez disposer du rôle Looker Administrateur.
- Pour enregistrer votre agent d'IA en tant que client OAuth à l'aide de l'explorateur d'API, vous devez disposer du rôle Looker Administrateur.
- Pour connecter un agent d'IA au serveur MCP géré par Looker : vous avez besoin de vos identifiants de connexion Looker standards pour vous authentifier lors du processus de connexion OAuth. L'agent d'IA doit d'abord être enregistré en tant que client OAuth par un administrateur Looker. Une fois connecté, l'agent d'IA hérite des rôles et des accès Looker de l'utilisateur authentifié.
Configurer le serveur MCP géré
Configurez l'accès aux outils pour configurer le serveur MCP géré.
Configurer les paramètres de l'outil
Par défaut, tous les outils sont désactivés pour le serveur MCP géré. Les administrateurs Looker doivent activer explicitement les outils que les agents IA sont autorisés à utiliser. Pour savoir comment activer les outils, consultez la page de documentation Paramètres d'administration : Model Context Protocol (MCP).
Configurer les paramètres CORS
Si le client MCP s'exécute directement dans un navigateur Web et souhaite communiquer avec le serveur MCP géré par Looker à l'aide de CORS, l'administrateur Looker doit ajouter le domaine de ce site Web client à la liste d'autorisation des domaines intégrés dans le panneau Admin.
Enregistrer un agent d'IA via OAuth
Lors du lancement de la preview, les administrateurs Looker doivent enregistrer manuellement un agent d'IA pour le connecter au serveur MCP géré.
Ouvrez l'explorateur d'API Looker.
Si l'explorateur d'API est déjà installé sur votre instance Looker, vous pouvez y accéder avec ce format d'URL :
LOOKER_INSTANCE_URL/extensions/marketplace_extension_api_explorer::api-explorer/Si votre instance Looker ne dispose pas de l'explorateur d'API, vous pouvez l'installer depuis Marketplace Looker. Pour en savoir plus, consultez la page Utiliser l'API Explorer.
Si vous utilisez une instance de connexion privée Looker (Google Cloud Core) qui utilise l'accès aux services privés, le Marketplace Looker et API Explorer ne sont pas compatibles. Pour enregistrer un agent d'IA, vous devez appeler directement le point de terminaison de l'API
oauth_client_apps. Si vous utilisez cette méthode, vous pouvez ignorer la procédure de l'explorateur d'API suivante et passer directement à la section Configurer un client MCP.Développez cette section pour voir un exemple de commande
curlque vous pouvez utiliser avec le point de terminaisonoauth_client_appspour enregistrer l'agent.curl -X POST "https://LOOKER_INSTANCE_URL/api/4.0/oauth_client_apps/CLIENT_GUID" \ -H "Authorization: token ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "redirect_uri": "REDIRECT_URI", "display_name": "CLIENT_NAME", "description": "OAuth client to access MCP server using CLIENT_NAME", "enabled": true }'
Sous la méthode Auth (Authentification), recherchez le point de terminaison de l'API Register OAuth App (Enregistrer l'application OAuth). Vous pouvez également rechercher "application OAuth" dans le champ Rechercher.
Sur la page Register OAuth App (Enregistrer l'application OAuth), cliquez sur le bouton Run It (Exécuter).
Dans l'onglet Request (Requête) de la boîte de dialogue Run It (Exécuter), saisissez les informations suivantes dans les champs correspondants :
Pour le champ
CLIENT_GUID, procédez comme suit :- Si l'agent prescrit un ID client spécifique, utilisez-le.
- Si l'agent ne prescrit pas d'ID client spécifique, utilisez un ID unique au niveau mondial.
- Préparez-vous à distribuer l'ID à tous les développeurs LookML qui souhaitent utiliser l'agent.
Pour le
redirect_uri, l'URI varie en fonction de l'application de l'agent d'IA. Vous pouvez consulter la documentation sur l'authentification OAuth de votre agent pour connaître son URL de redirection spécifique. Le format peut ressembler à l'un des exemples suivants :CLI Gemini
http://localhost:7777/oauth/callback
Gemini Code Assist
http://localhost:7777/oauth/callback
Nous vous recommandons d'utiliser Gemini CLI avec Gemini Code Assist. Dans ce cas, ils partagent le même serveur de rappel local et la même configuration de port.
Gemini Enterprise
https://vertexaisearch.cloud.google.com/oauth-redirect
Claude Code
Claude Code utilise un port disponible aléatoire pour le rappel OAuth, mais vous devez le corriger à l'aide de l'option
(ou du paramètre--callback-port 8080callbackPortdansmcp.json) pour qu'il corresponde à votre URI enregistré.http://localhost:8080/callback
VS Code
Pour VS Code, utilisez l'URI suivant.
http://127.0.0.1:33418/
Applications hébergées dans le cloud
Pour les applications hébergées dans le cloud, elle peut se présenter sous la forme d'une URL HTTPS sécurisée :
https://AI_AGENT_URL/oauth2callback
Applications locales
Pour les applications exécutées localement, il doit s'agir d'une URL localhost avec un port statique :
http://localhost:7777/oauth/callback
Renseignez
display_nameetdescriptioncomme décrit dans la documentation Enregistrer une application cliente OAuth.
Cochez la case Je comprends que ce point de terminaison de l'API modifiera les données.
Cliquez sur Exécuter.
Pour vérifier que vous avez bien configuré l'authentification, utilisez la méthode
Get OAuth Client Appdans l'explorateur d'API en procédant comme suit :- Dans le champ Rechercher d'APIs Explorer, saisissez Get OAuth Client App.
- Cliquez sur Run It (Exécuter).
Dans le champ CLIENT_GUID, saisissez la valeur que vous avez utilisée lors de l'enregistrement de l'OAuth :
CLIENT_GUID
Si vous avez configuré OAuth correctement, l'onglet Réponse renverra les valeurs que vous avez saisies lors de l'enregistrement de l'application.
(Facultatif) Vous pouvez activer l'utilisateur de l'application OAuth à l'avance à l'aide de la méthode
Activate App Userdans APIs Explorer en suivant ces étapes :- Dans le champ Rechercher de l'explorateur d'API, saisissez Activate App User.
- Cliquez sur Run It (Exécuter).
Dans le champ CLIENT_GUID, saisissez la valeur que vous avez utilisée lors de l'enregistrement de l'application OAuth :
CLIENT_GUIDDans le champ user_id, saisissez l'ID utilisateur Looker de l'utilisateur.
Cliquez sur Exécuter.
Configurer le client MCP
Une fois l'agent d'IA enregistré, vous pouvez le connecter au point de terminaison MCP géré en tant que client MCP. Consultez la documentation de votre agent pour terminer la configuration du client.
- URL du serveur :
LOOKER_INSTANCE_URL/mcp - Authentification : OAuth 2.1
Exemples de configurations (mcp.json)
Cette section explique comment configurer différents outils pour les développeurs afin de se connecter à votre instance Looker à l'aide du serveur MCP géré par Looker. Le serveur MCP se situe entre votre IDE et Looker. Il fournit un plan de contrôle sécurisé et efficace pour vos outils d'IA. Sélectionnez l'onglet correspondant à votre outil pour afficher les instructions de configuration.
CLI Gemini
Configurez Gemini CLI pour qu'il se connecte directement au serveur MCP géré par Looker.
- Installez Gemini CLI.
- Ajoutez le serveur MCP distant à l'aide de la commande suivante, en remplaçant
LOOKER_INSTANCE_URLpar l'URL de votre instance Looker :gemini mcp add --transport http looker LOOKER_INSTANCE_URL/mcp
Vous pouvez également configurer manuellement cette option en ajoutant la configuration suivante à votre fichier
settings.json(situé dans~/.gemini/settings.jsonou dans le répertoire de votre projet) :{ "mcpServers": { "looker": { "httpUrl": "LOOKER_INSTANCE_URL/mcp", "oauth": { "clientId": "CLIENT_GUID" } } } } - Démarrez la Gemini CLI en mode interactif :
Lorsque vous êtes invité à vous connecter, la CLI lance le flux d'autorisation OAuth pour s'authentifier de manière sécurisée auprès de votre instance Looker.gemini
Gemini Code Assist
Nous vous recommandons de configurer Gemini Code Assist pour utiliser la CLI Gemini. Cette approche évite de configurer manuellement un serveur MCP.
- Assurez-vous d'avoir installé et configuré Gemini CLI et le serveur MCP géré par Looker.
- Configurez Gemini Code Assist pour utiliser la CLI Gemini.
- Commencez à interagir avec votre instance Looker en utilisant le langage naturel directement dans le chat Gemini Code Assist.
Gemini Enterprise
Configurez Gemini Enterprise pour qu'il se connecte au serveur MCP géré par Looker en tant que datastore de serveur MCP personnalisé.
- Suivez la documentation officielle pour créer un datastore de serveur MCP personnalisé dans Gemini Enterprise.
- Pour la configuration du datastore, utilisez les valeurs suivantes, en remplaçant
LOOKER_INSTANCE_URLpar l'URL de votre instance Looker etCLIENT_GUIDpar la chaîne exacte que vous avez utilisée lors de l'enregistrement de votre application OAuth :{ "instance_uri": "LOOKER_INSTANCE_URL/mcp", "auth_uri": "LOOKER_INSTANCE_URL/auth", "auth_uri_params": "&response_type=code&code_challenge_method=S256", "token_uri": "LOOKER_INSTANCE_URL/api/token", "client_id": "CLIENT_GUID", "client_secret": "none", "scopes": "cors_api", "pkce_support_enabled": "true" }PKCE ne nécessite pas de code secret du client OAuth, mais Gemini Enterprise exige une valeur dans le champ
client_secret. Vous pouvez saisirnone, comme indiqué dans l'exemple de configuration. - Authentifiez-vous avec OAuth pour continuer.
- Définissez la description du serveur MCP pour aider Gemini à comprendre quand l'appeler. Exemple :
Looker Agent with API access to various aspects of Looker. Primarily used to fetch data and run dashboards from Looker.
- Définissez les instructions de l'agent du serveur MCP. Exemple :
Use this server exclusively to interact with the Looker instance for monitoring health, checking status, and retrieving data. Invoke the Looker MCP server for the following request categories: - Instance Health Checks: Auditing connection status, uptime, performance metrics, or system errors. - Analytics Queries & Data Retrieval: Fetching live business metrics from Explores, Looks, or Dashboards. Strict Constraints: - No Local Estimation: Do not guess. Always fetch real-time data via MCP tools. - Fallback Behavior: Inform the user of connectivity failures immediately.
- Accédez à l'onglet Actions du datastore MCP personnalisé que vous venez de créer, puis activez les outils que vous souhaitez que Gemini Enterprise utilise.
- Finalisez la configuration en accédant à Gemini Enterprise, en cliquant sur l'icône Connecteur, puis en autorisant le serveur MCP.
Claude Code
- Installez Claude Code.
- Créez le fichier
.mcp.jsonà la racine de votre projet, s'il n'existe pas. - Ajoutez la configuration suivante, en remplaçant
LOOKER_INSTANCE_URLpar l'URL de votre instance Looker etCLIENT_GUIDpar le GUID de votre client OAuth, puis enregistrez.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp",
"oauth": {
"clientId": "CLIENT_GUID",
"callbackPort": 8080
}
}
}
}
Claude sur ordinateur
- Dans Claude sur ordinateur, accédez à Settings (Paramètres), puis sélectionnez Connectors (Connecteurs).
- Sélectionnez Ajouter un connecteur personnalisé et saisissez un nom (par exemple, Looker).
- Pour l'URL, saisissez celle de votre instance Looker en ajoutant le chemin d'accès
/mcp(par exemple,https://looker.example.com/mcp). - Sous Paramètres avancés, saisissez la chaîne exacte que vous avez utilisée pour
CLIENT_GUIDlors de l'enregistrement de votre application OAuth. Laissez le code secret du client OAuth vide. - Sélectionnez Ajouter pour enregistrer le connecteur. Lorsque vous êtes invité à vous connecter, Claude sur ordinateur lance de manière sécurisée le flux d'autorisation PKCE via votre navigateur.
- Redémarrez Claude pour ordinateur.
Cline
- Ouvrez l'extension Cline dans votre IDE, puis cliquez sur l'icône Serveurs MCP.
- Cliquez sur Configurer les serveurs MCP pour ouvrir le fichier de configuration.
- Ajoutez la configuration suivante, en remplaçant
LOOKER_INSTANCE_URLpar votre URL Looker, puis enregistrez.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Cursor
- Créez le répertoire
.cursordans la racine de votre projet s'il n'existe pas. - Créez le fichier
.cursor/mcp.jsons'il n'existe pas, puis ouvrez-le. - Ajoutez la configuration suivante, en remplaçant
LOOKER_INSTANCE_URLpar votre URL Looker, puis enregistrez.
{
"mcpServers": {
"looker": {
"url": "LOOKER_INSTANCE_URL/mcp",
auth: {
"CLIENT_ID": "CLIENT_GUID"
}
}
}
}
- Ouvrez Cursor, puis accédez à Settings > Cursor Settings > MCP (Paramètres > Paramètres du curseur > MCP). Un état actif vert s'affiche lorsque le serveur se connecte.
Visual Studio Code (Copilot)
- Ouvrez VS Code et créez le répertoire
.vscodedans la racine de votre projet s'il n'existe pas. - Créez le fichier
.vscode/mcp.jsons'il n'existe pas, puis ouvrez-le. - Ajoutez la configuration suivante, en remplaçant
LOOKER_INSTANCE_URLpar l'URL de votre instance Looker, puis enregistrez.
{
"servers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Windsurf
- Ouvrez Windsurf et accédez à l'assistant Cascade.
- Cliquez sur l'icône MCP, puis sur Configurer pour ouvrir le fichier de configuration.
- Ajoutez la configuration suivante, en remplaçant
LOOKER_INSTANCE_URLpar l'URL de votre instance Looker, puis enregistrez.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
S'authentifier auprès du client
Une fois que vous avez configuré votre client MCP avec les paramètres mcp.json, la première fois que vous tenterez d'interagir avec Looker via ce client, le flux d'authentification OAuth 2.1 sera lancé. Cela implique généralement que le client ouvre une fenêtre de navigateur dans laquelle vous devez vous connecter à votre instance Looker à l'aide de vos identifiants standards et autoriser l'application à accéder à Looker en votre nom.
Ce processus de connexion est l'étape d'authentification interactive qui permet au client MCP d'obtenir un jeton d'accès pour les futures requêtes.
Pour en savoir plus, consultez la documentation de votre client.
Une fois connecté, le client héritera de vos rôles Looker et de votre accès au contenu. Le client aura également accès aux outils d'IA que votre administrateur Looker a activés pour le serveur MCP. Pour obtenir la liste de tous les outils possibles, consultez la documentation Utiliser les outils d'IA.
Sécurité et gouvernance
Le serveur MCP géré est conçu pour hériter du framework de sécurité et de gouvernance existant de Looker.
- Limite d'autorisation : le serveur applique des autorisations strictes au niveau de l'utilisateur. Un agent d'IA ne peut pas accéder aux données ni aux modèles que l'utilisateur authentifié n'est pas autorisé à voir.
- VPC Service Controls : pour les instances Looker (Google Cloud Core) qui utilisent VPC Service Controls, le point de terminaison MCP géré respecte les limites VPC Service Controls existantes sans nécessiter de règles ni de configurations supplémentaires.
- Clés de chiffrement gérées par le client (CMEK) : pour les instances Looker (Google Cloud Core) qui utilisent des CMEK, le serveur MCP géré est conforme aux CMEK sans qu'aucune configuration ni aucun règlement supplémentaire ne soient requis.
- Listes d'adresses IP autorisées : pour les instances qui utilisent une liste d'adresses IP autorisées dans Looker (Google Cloud Core) ou Looker (original), le point de terminaison MCP géré respecte les règles existantes de la liste d'adresses IP autorisées sans nécessiter de configurations supplémentaires.
Journaux d'audit
Chaque action effectuée par un agent d'IA est consignée dans l'activité du système Looker et dans les journaux d'audit Cloud.
Activité du système
L'activité du serveur MCP géré par Looker est suivie dans les Explorations Historique et Attribut d'événement. La page de documentation Surveiller l'utilisation de Looker avec les explorations de l'activité du système fournit les exemples de requêtes suivants :
- Quels appels d'API ont été initiés par le serveur MCP géré par Looker ?
- Quels événements sont liés à une requête provenant du serveur MCP géré par Looker ?
- Quelles modifications les administrateurs Looker ont-ils apportées aux paramètres des outils du serveur MCP géré par Looker ?
- Quelles requêtes ont été exécutées par les utilisateurs du serveur MCP géré par Looker ?
Cloud Audit Logs
Les instances Looker (Google Cloud Core) suivent également l'activité du serveur MCP géré par Looker via Cloud Audit Logs. La page de documentation Journalisation des audits Looker (Google Cloud Core) fournit des exemples de requêtes.
Limites
- Champs d'application précis : les champs d'application OAuth ne sont pas encore compatibles avec le serveur MCP géré. Le contrôle des accès repose sur la liste d'autorisation globale des outils et sur les autorisations de base de l'utilisateur.
- Enregistrement dynamique : l'enregistrement dynamique des clients n'est pas pris en charge dans l'aperçu.
- Actualisation du client : les modifications apportées à la liste d'autorisation des outils ne sont pas automatiquement transmises aux clients connectés. Les utilisateurs doivent attendre 30 secondes après avoir modifié la liste des outils, puis reconnecter leur client pour actualiser le fichier manifeste des outils. Consultez la documentation de votre client pour savoir comment vous reconnecter au serveur MCP.
- Capacité du serveur : pendant la phase d'aperçu, le serveur MCP géré est configuré avec une capacité fixe pour nous aider à collecter des données sur les performances. Pendant les périodes de pointe, il est possible que vous rencontriez des délais d'expiration occasionnels. Ce comportement est normal.
Tarifs et quotas
Le serveur MCP géré par Looker est disponible sans frais supplémentaires. Toutefois, les appels d'outils effectués par les agents d'IA consomment les quotas d'API standards de l'instance, qu'ils soient administratifs ou basés sur des requêtes. Une activité d'agent élevée peut avoir un impact sur votre quota d'API disponible.