Utiliser le serveur MCP distant GKE

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 à distance s'exécutent sur l'infrastructure du service et proposent un point de terminaison HTTP 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.

Ce document explique comment utiliser le serveur MCP (Model Context Protocol) distant GKE pour se connecter à GKE à 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.

Pour en savoir plus sur le serveur MCP local GKE, consultez Serveur MCP GKE sur GitHub.

Google et les serveurs MCP distants présentent les fonctionnalités et avantages suivants : Google Cloud

  • Découverte simplifiée et centralisée.
  • Points de terminaison HTTP mondiaux ou régionaux gérés.
  • Autorisation précise.
  • Sécurité facultative des requêtes et des réponses avec la protection Model Armor.
  • Journalisation centralisée des audits.

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 Présentation des serveurs MCP Google Cloud.

Vous pouvez utiliser le serveur MCP local GKE pour les raisons suivantes :

  • Développement et tests locaux
  • Utilisation hors connexion de MCP
  • Création de clusters et de charges de travail, y compris la génération de fichiers manifestes pour les charges de travail d'IA/de ML
  • Configuration du client local (à l'aide de kubeconfig)
  • Journaux de requête
  • Obtenir des recommandations sur les coûts et la sécurité pour votre environnement GKE

Pour en savoir plus sur l'utilisation de notre serveur MCP local, consultez Serveur MCP GKE. Les sections suivantes ne s'appliquent qu'au serveur MCP distant GKE.

Avant de commencer

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.

  4. Pour initialiser la gcloud CLI, exécutez la commande suivante :

    gcloud init
  5. Create or select 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 the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Kubernetes Engine API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable container.googleapis.com
  8. Grant roles to your user account. Run the following command once for each of the following IAM roles: roles/container.clusterViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    Replace the following:

    • PROJECT_ID: Your project ID.
    • USER_IDENTIFIER: The identifier for your user account. For example, myemail@example.com.
    • ROLE: The IAM role that you grant to your user account.
  9. Install the Google Cloud CLI.

  10. Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.

  11. Pour initialiser la gcloud CLI, exécutez la commande suivante :

    gcloud init
  12. Create or select 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 the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  13. Verify that billing is enabled for your Google Cloud project.

  14. Enable the Kubernetes Engine API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable container.googleapis.com
  15. Grant roles to your user account. Run the following command once for each of the following IAM roles: roles/container.clusterViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    Replace the following:

    • PROJECT_ID: Your project ID.
    • USER_IDENTIFIER: The identifier for your user account. For example, myemail@example.com.
    • ROLE: The IAM role that you grant to your user account.
  16. Rôles requis

    Pour effectuer la configuration unique permettant d'activer le serveur MCP distant GKE, un administrateur a besoin des rôles suivants :

    • Administrateur des règles d'administration (roles/orgpolicy.policyAdmin) : accordez ce rôle à votre organisation Google Cloud pour autoriser la création de règles d'administration personnalisées.
    • Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin) : accordez ce rôle sur votre projet Google Cloud pour autoriser l'activation du point de terminaison du service MCP à distance. Ce rôle inclut les autorisations serviceusage.mcppolicy.get et serviceusage.mcppolicy.update.

    Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

    Rôles pour utiliser le service

    Le compte principal qui appelle les outils du serveur MCP distant doit disposer des autorisations nécessaires pour accéder aux ressources GKE. Ce compte principal peut être un utilisateur ou un compte de service automatisé. Vous devez au moins attribuer le rôle suivant à votre projetGoogle Cloud  :

    • Utilisateur de l'outil MCP (roles/mcp.toolUser) : accorde l'autorisation d'effectuer des appels d'outil au point de terminaison du serveur MCP.
    • Lecteur de cluster Kubernetes Engine (roles/container.clusterViewer) : ce rôle fournit l'accès en lecture seule nécessaire aux outils du serveur distant.

    Attribuez ce rôle à :

    • Un compte utilisateur lorsqu'une personne interagit avec le serveur MCP via un client tel que la CLI Gemini.
    • Un compte de service lorsque vous créez un agent ou une application autonomes qui appellent le serveur MCP.

    Activer ou désactiver le serveur MCP distant GKE

    Vous pouvez activer ou désactiver le serveur MCP distant GKE 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 distant GKE dans un projet

    Si vous utilisez différents projets pour vos identifiants client (tels que les clés de compte de service, l'ID client OAuth ou les clés API) et pour héberger vos ressources, vous devez activer le service GKE et le serveur MCP distant GKE dans les deux projets.

    Pour activer le serveur MCP à distance GKE dans votre projetGoogle Cloud , exécutez la commande suivante :

    gcloud beta services mcp enable container.googleapis.com \
        --project=PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID du projet Google Cloud .

    Le serveur MCP distant GKE est activé pour être utilisé dans votre projet Google Cloud . Si le service GKE n'est pas activé pour votre projetGoogle Cloud , vous êtes invité à l'activer avant d'activer le serveur MCP distant GKE.

    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 distant GKE dans un projet

    Pour désactiver le serveur MCP distant GKE dans votre projetGoogle Cloud , exécutez la commande suivante :

    gcloud beta services mcp disable SERVICE \
        --project=PROJECT_ID
    

    Le serveur MCP distant GKE est désactivé pour être utilisé dans votre projet Google Cloud .

    Authentification et autorisation

    Les serveurs MCP distants GKE utilisent le protocole OAuth 2.0 avec Identity and Access Management (IAM) pour l'authentification et l'autorisation. Toutes les Google Cloud identités sont acceptées pour l'authentification auprès des serveurs MCP.

    Le serveur MCP distant GKE n'accepte pas les clés API pour l'authentification.

    Nous vous recommandons de créer une identité distincte pour les agents qui utilisent les outils MCP afin de pouvoir contrôler et surveiller l'accès aux ressources. Pour en savoir plus sur l'authentification, consultez S'authentifier auprès des serveurs MCP.

    Niveaux d'accès OAuth MCP à distance GKE

    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.

    GKE dispose des niveaux d'accès OAuth suivants pour l'outil MCP :

    URI du champ d'application pour la gcloud CLI Description
    https://www.googleapis.com/auth/cloud-platform Accorde un accès étendu en lecture seule à vos projets Google Cloud .

    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 identifiants requis pour GKE, consultez API GKE.

    Configurer un client MCP pour utiliser le serveur MCP GKE

    Les programmes hôtes, tels que la CLI Claude ou Gemini, peuvent instancier des clients MCP qui se connectent à un seul serveur MCP. Un programme hôte peut comporter plusieurs clients qui se connectent à différents serveurs MCP. Pour se connecter à un serveur MCP distant, le client MCP doit connaître au moins l'URL du serveur MCP distant.

    Dans votre hôte, recherchez un moyen de vous connecter à un serveur MCP distant. Vous êtes invité à saisir des informations sur le serveur, comme son nom et son URL.

    Pour le serveur MCP distant GKE, saisissez les informations suivantes, le cas échéant :

    • Nom du serveur : serveur MCP distant GKE
    • URL du serveur ou Point de terminaison : https://container.googleapis.com/mcp
    • Transport : HTTP
    • Informations d'authentification : selon la méthode d'authentification choisie, vous pouvez saisir vos identifiants Google Cloud , votre ID client et votre code secret OAuth, ou l'identité et les identifiants d'un agent. Pour en savoir plus sur l'authentification, consultez S'authentifier auprès des serveurs MCP.

    Pour obtenir des conseils spécifiques à un hôte, consultez les articles suivants :

    Pour obtenir des conseils plus généraux, consultez Se connecter à des serveurs MCP distants.

    Outils disponibles

    Les outils MCP en lecture seule ont l'attribut MCP mcp.tool.isReadOnly défini sur true. Vous pouvez choisir d'autoriser uniquement les outils en lecture seule dans certains environnements via votre règle d'administration.

    Pour afficher les détails des outils MCP disponibles et leurs descriptions pour le serveur MCP GKE, consultez la documentation de référence sur le MCP GKE.

    Outils de liste

    Utilisez l'inspecteur MCP pour lister les outils ou envoyez une requête HTTP tools/list directement au serveur MCP GKE distant. La méthode tools/list ne nécessite pas d'authentification.

    POST /mcp HTTP/1.1
    Host: container.googleapis.com
    Content-Type: application/json
    
    {
      "jsonrpc": "2.0",
      "method": "tools/list",
    }
    

    Exemples de cas d'utilisation

    Voici des exemples de cas d'utilisation du serveur MCP distant GKE :

    • Inspectez la configuration et l'état de vos clusters et pools de nœuds GKE. Par exemple, utilisez la requête "Affiche les détails de mon cluster de production et liste tous ses pools de nœuds."
    • Affichez les configurations des ressources Kubernetes et les journaux des conteneurs dans un cluster sans utiliser kubectl. Par exemple, utilisez la requête : "Obtiens le fichier YAML pour le 'frontend-deployment' dans l'espace de noms 'default'."
    • Surveillez l'état des opérations GKE de longue durée, telles que les mises à niveau de cluster. Par exemple, utilisez la requête "Liste toutes les opérations GKE de mon projet au cours de la dernière heure".

    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 qui peuvent être effectuées 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.

    Model Armor

    Model Armor est un serviceGoogle 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é 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 multirégional. Pour en savoir plus, consultez la section Emplacements Model Armor.

    Activer Model Armor

    Pour activer Model Armor, procédez comme suit :

    1. Pour activer Model Armor sur votre projetGoogle Cloud , exécutez la commande gcloud CLI suivante :

      gcloud services enable modelarmor.googleapis.com \
          --project=PROJECT_ID
      

      Remplacez PROJECT_ID par l'ID du projetGoogle Cloud .

    2. Pour configurer les paramètres de seuil recommandés pour Model Armor, exécutez la commande gcloud CLI suivante :

      gcloud model-armor floorsettings update \
          --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
          --mcp-sanitization=ENABLED \
          --malicious-uri-filter-settings-enforcement=ENABLED
      

      Remplacez PROJECT_ID par l'ID du projetGoogle Cloud .

      Model Armor est configuré pour détecter les tentatives d'URL malveillantes.

      Pour en savoir plus sur les filtres Model Armor configurables, consultez Filtres Model Armor.

    3. Pour ajouter Model Armor en tant que fournisseur de sécurité du contenu pour les services MCP, exécutez la commande gcloud CLI suivante :

      gcloud beta services mcp content-security add modelarmor.googleapis.com \
          --project=PROJECT_ID
      

      Remplacez PROJECT_ID par l'ID du projetGoogle Cloud .

    4. Pour vérifier que le trafic MCP est envoyé à Model Armor, exécutez la commande suivante :

      gcloud beta services mcp content-security get \
          --project=PROJECT_ID
      

      Remplacez PROJECT_ID par l'ID du projetGoogle Cloud .

    Journalisation Model Armor

    Pour en savoir plus sur les journaux d'audit et de plate-forme Model Armor, consultez Journaux d'audit Model Armor.

    Désactiver Model Armor dans un projet

    Pour désactiver Model Armor sur un projet Google Cloud , exécutez la commande suivante :

    gcloud beta services mcp content-security remove modelarmor.googleapis.com \
        --project=PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID du projetGoogle Cloud .

    Le trafic MCP sur Google Cloud ne sera pas analysé par Model Armor pour le projet spécifié.

    Désactiver l'analyse du trafic MCP avec Model Armor

    Si vous souhaitez toujours utiliser Model Armor dans un projet, mais que vous voulez arrêter d'analyser le trafic MCP avec Model Armor, exécutez la commande suivante :

    gcloud model-armor floorsettings update \
      --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
      --mcp-sanitization=DISABLED
    

    Remplacez PROJECT_ID par l'ID du projetGoogle Cloud .

    Model Armor n'analysera pas le trafic MCP surGoogle Cloud.

    Contrôle MCP au niveau de l'organisation

    Vous pouvez créer des règles d'administration personnalisées pour contrôler l'utilisation des serveurs MCP dans votre organisation Google Cloud à l'aide de la contrainte gcp.managed.allowedMCPService. Pour en savoir plus et obtenir des exemples d'utilisation, consultez Contrôle des accès aux serveurs MCP Google Cloud avec IAM.

    Étapes suivantes