Google Cloud Run

officiel

Serveur MCP officiel pour déployer sur Google Cloud Run.

Documentation

Serveur MCP Cloud Run et extension Gemini CLI

Permet aux agents IA compatibles MCP de déployer des applications sur Cloud Run.

"mcpServers":{
  "cloud-run": {
    "command": "npx",
    "args": ["-y", "@google-cloud/cloud-run-mcp"]
  }
}

Déployer depuis Gemini CLI et d'autres agents CLI alimentés par l'IA :

Déployer depuis des IDE alimentés par l'IA :

Déployer depuis des applications d'assistant IA :

Déployer depuis des SDK d'agent, comme le SDK Google Gen AI ou le Kit de développement d'agent.

[!NOTE]
Ceci est le dépôt d'un serveur MCP pour déployer du code sur Cloud Run. Pour apprendre à héberger des serveurs MCP sur Cloud Run, consultez la documentation Cloud Run.

Outils

  • deploy-file-contents : Déploie des fichiers sur Cloud Run en fournissant leur contenu directement.

  • list-services : Liste les services Cloud Run dans un projet et une région donnés.

  • get-service : Obtient les détails d'un service Cloud Run spécifique.

  • get-service-log : Obtient les journaux et les messages d'erreur pour un service Cloud Run spécifique.

  • deploy-local-folder* : Déploie un dossier local vers un service Google Cloud Run.

  • list-projects* : Liste les projets GCP disponibles.

  • create-project* : Crée un nouveau projet GCP et le rattache au premier compte de facturation disponible. Un ID de projet peut être spécifié en option.

* disponible uniquement en exécution locale

Invites

Les invites sont des commandes en langage naturel qui peuvent être utilisées pour effectuer des tâches courantes. Ce sont des raccourcis pour exécuter des appels d'outils avec des arguments pré-remplis.

  • deploy : Déploie le répertoire de travail actuel vers Cloud Run. Si un nom de service n'est pas fourni, il utilisera la variable d'environnement DEFAULT_SERVICE_NAME, ou le nom du répertoire de travail actuel.
  • logs : Obtient les journaux d'un service Cloud Run. Si un nom de service n'est pas fourni, il utilisera la variable d'environnement DEFAULT_SERVICE_NAME, ou le nom du répertoire de travail actuel.

Variables d'environnement

Le serveur MCP Cloud Run peut être configuré à l'aide des variables d'environnement suivantes :

VariableDescription
GOOGLE_CLOUD_PROJECTL'ID de projet par défaut à utiliser pour les services Cloud Run.
GOOGLE_CLOUD_REGIONLa région par défaut à utiliser pour les services Cloud Run.
DEFAULT_SERVICE_NAMELe nom de service par défaut à utiliser pour les services Cloud Run.
SKIP_IAM_CHECKContrôle s'il faut vérifier les autorisations IAM pour un service Cloud Run. Définir sur false pour activer les vérifications. C'est true par défaut, ce qui est une manière recommandée de rendre le service public.
ENABLE_HOST_VALIDATIONEmpêche les attaques de rebinding DNS en validant l'en-tête Host. Ceci est désactivé par défaut.
ALLOWED_HOSTSListe séparée par des virgules des en-têtes Host autorisés (si la validation d'hôte est activée). La valeur par défaut est localhost,127.0.0.1,::1.

Utiliser comme extension Gemini CLI

Pour installer ceci comme une extension Gemini CLI, exécutez la commande suivante :

  1. Installez l'extension :

    gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp
    
  2. Connectez-vous à votre compte Google Cloud en utilisant la commande :

    gcloud auth login
    
  3. Configurez les identifiants d'application en utilisant la commande :

    gcloud auth application-default login
    

Utiliser dans les clients MCP

Apprendre à configurer votre client MCP

La plupart des clients MCP nécessitent qu'un fichier de configuration soit créé ou modifié pour ajouter le serveur MCP.

La syntaxe du fichier de configuration peut varier selon les clients. Veuillez vous référer aux liens suivants pour la syntaxe attendue la plus récente :

Une fois que vous avez identifié comment configurer votre client MCP, sélectionnez l'une de ces deux options pour configurer le serveur MCP. Nous recommandons la configuration en tant que serveur MCP local utilisant Node.js.

Configurer en tant que serveur MCP local

Exécutez le serveur MCP Cloud Run sur votre machine locale en utilisant les identifiants Google Cloud locaux. C'est la meilleure option si vous utilisez un IDE assisté par IA (par exemple Cursor) ou une application de bureau IA (par exemple Claude).

  1. Installez le SDK Google Cloud et authentifiez-vous avec votre compte Google.

  2. Connectez-vous à votre compte Google Cloud en utilisant la commande :

    gcloud auth login
    
  3. Configurez les identifiants d'application en utilisant la commande :

    gcloud auth application-default login
    

Configurez ensuite le serveur MCP en utilisant Node.js ou Docker :

Utiliser Node.js

  1. Installez Node.js (version LTS recommandée).

  2. Mettez à jour le fichier de configuration MCP de votre client MCP avec ce qui suit :

       "cloud-run": {
         "command": "npx",
         "args": ["-y", "@google-cloud/cloud-run-mcp"]
       }
    
  3. [Optionnel] Ajoutez des configurations par défaut

       "cloud-run": {
          "command": "npx",
          "args": ["-y", "@google-cloud/cloud-run-mcp"],
          "env": {
                "GOOGLE_CLOUD_PROJECT": "PROJECT_NAME",
                "GOOGLE_CLOUD_REGION": "PROJECT_REGION",
                "DEFAULT_SERVICE_NAME": "SERVICE_NAME"
          }
       }
    

Utiliser Docker

Consultez le catalogue MCP de Docker, ou utilisez ces instructions manuelles :

  1. Installez Docker

  2. Mettez à jour le fichier de configuration MCP de votre client MCP avec ce qui suit :

       "cloud-run": {
         "command": "docker",
         "args": [
           "run",
           "-i",
           "--rm",
           "-e",
           "GOOGLE_APPLICATION_CREDENTIALS",
           "-v",
           "/local-directory:/local-directory",
           "mcp/cloud-run-mcp:latest"
         ],
         "env": {
           "GOOGLE_APPLICATION_CREDENTIALS": "/Users/slim/.config/gcloud/application_default-credentials.json",
           "DEFAULT_SERVICE_NAME": "SERVICE_NAME"
         }
       }
    

Configurer en tant que serveur MCP distant

[!WARNING]
N'utilisez pas le serveur MCP distant sans authentification. Dans les instructions suivantes, nous utiliserons l'authentification IAM pour sécuriser la connexion au serveur MCP depuis votre machine locale. Ceci est important pour empêcher tout accès non autorisé à vos ressources Google Cloud.

Exécutez le serveur MCP Cloud Run lui-même sur Cloud Run avec une connexion depuis votre machine locale authentifiée via IAM. Avec cette option, vous ne pourrez déployer du code que vers le même projet Google Cloud que celui où le serveur MCP est en cours d'exécution.

  1. Installez le SDK Google Cloud et authentifiez-vous avec votre compte Google.

  2. Connectez-vous à votre compte Google Cloud en utilisant la commande :

    gcloud auth login
    
  3. Définissez votre ID de projet Google Cloud en utilisant la commande :

    gcloud config set project YOUR_PROJECT_ID
    
  4. Déployez le serveur MCP Cloud Run sur Cloud Run :

    gcloud run deploy cloud-run-mcp --image us-docker.pkg.dev/cloudrun/container/mcp --no-allow-unauthenticated
    

    Lorsque vous y êtes invité, choisissez une région, par exemple europe-west1.

    Notez que le serveur MCP n'est pas accessible publiquement, il nécessite une authentification via IAM.

  5. [Optionnel] Ajoutez des configurations par défaut

    gcloud run services update cloud-run-mcp --region=REGION --update-env-vars GOOGLE_CLOUD_PROJECT=PROJECT_NAME,GOOGLE_CLOUD_REGION=PROJECT_REGION,DEFAULT_SERVICE_NAME=SERVICE_NAME,SKIP_IAM_CHECK=false
    
  6. Exécutez un proxy Cloud Run sur votre machine locale pour vous connecter de manière sécurisée en utilisant votre identité au serveur MCP distant s'exécutant sur Cloud Run :

    gcloud run services proxy cloud-run-mcp --port=3000 --region=REGION --project=PROJECT_ID
    

    Cela créera un proxy local sur le port 3000 qui transfère les requêtes au serveur MCP distant et injecte votre identité.

  7. Mettez à jour le fichier de configuration MCP de votre client MCP avec ce qui suit :

       "cloud-run": {
         "url": "http://localhost:3000/sse"
       }
    
    

    Si votre client MCP ne prend pas en charge l'attribut url, vous pouvez utiliser mcp-remote :

       "cloud-run": {
         "command": "npx",
         "args": ["-y", "mcp-remote", "http://localhost:3000/sse"]
       }
    

Utiliser le serveur MCP avec OAuth

Le serveur MCP Cloud Run prend en charge OAuth comme mécanisme d'authentification. Pour utiliser OAuth, créez le client OAuth et configurez un fichier .env avec les valeurs appropriées relatives à votre client OAuth. Un .env.example est fourni à titre de référence.

Le serveur MCP Cloud Run fonctionne de manière transparente avec le client OAuth du SDK Google Cloud. Afin de tirer parti du client OAuth du SDK Google Cloud, vous pouvez utiliser le fichier .env.gcloud-sdk-oauth comme votre fichier .env comme suit :

cp .env.gcloud-sdk-oauth .env
node mcp-server.js

Configurer le serveur MCP sur Gemini CLI pour utiliser OAuth

Lorsque le serveur MCP Cloud Run est démarré en mode OAuth, le client MCP doit également être configuré pour utiliser OAuth. Vous pouvez configurer le serveur MCP en mode OAuth dans Gemini CLI en utilisant le JSON suivant dans le fichier ~/.gemini/settings.json :

{
  "mcpServers": {
    "cloud-run": {
      "httpUrl": "http://localhost:3000/mcp",
      "oauth": {
        "enabled": true,
        "clientId": "<OAUTH_CLIENT_ID>",
        "clientSecret": "<OAUTH_CLIENT_SECRET>"
      }
    }
  }
}

Après les modifications de configuration comme indiqué ci-dessus, démarrez Gemini CLI. Vous devez authentifier le serveur MCP Cloud Run en utilisant l'invite suivante dans Gemini CLI :

/mcp auth cloud-run

Cela vous amènera à la page d'authentification sur votre navigateur, où vous devez vous connecter en utilisant l'identifiant Gmail approprié et accepter les conditions générales. Une fois l'authentification réussie, vous pouvez revenir à Gemini CLI, et le serveur MCP Cloud Run sera prêt à être utilisé.

Les Conditions d'utilisation de Google Cloud Platform (disponibles sur https://cloud.google.com/terms/) et les Conditions de traitement et de sécurité des données (disponibles sur https://cloud.google.com/terms/data-processing-terms) ne s'appliquent à aucun composant du logiciel du serveur MCP Cloud Run.

Compétences Cloud Run

Nous introduisons les compétences Cloud Run pour permettre aux agents IA d'effectuer des actions sur Cloud Run. Vous pouvez utiliser ces compétences avec Gemini CLI et d'autres outils IA agentiques. Les compétences sont disponibles sur Compétences Cloud Run.

Les compétences Cloud Run sont basées sur gcloud CLI pour Cloud Run, permettant aux agents d'effectuer toutes les actions sur Cloud Run en utilisant gcloud, comme peut le faire l'utilisateur GCP en utilisant gcloud CLI.

Pour utiliser les compétences Cloud Run :

  1. Assurez-vous que la CLI gcloud est installée et authentifiée avec gcloud auth login et gcloud auth application-default login.
  2. Définissez votre projet avec gcloud config set project [PROJECT_ID].
  3. Activez les compétences sur votre outil IA agentique. Par exemple, vous pouvez activer les compétences pour Gemini CLI en utilisant la commande suivante sur votre terminal :
gemini skills install https://github.com/GoogleCloudPlatform/cloud-run-mcp.git --path skills/cloud-run
  1. Une fois les compétences activées, vous pouvez les utiliser pour effectuer des actions sur Cloud Run. Voici quelques invites pour vous aider à démarrer :
  • Lister les services Cloud Run dans le projet test-gcp-project dans la région us-west1.

  • Déployer le dossier /home/username/workspace/hello-world en tant que service Cloud Run hello-world vers le projet test-gcp-project dans la région us-west1.

  • Décrire le job Cloud Run hello-job dans le projet test-gcp-project dans la région europe-west1.