/ Annuaire / Playground / Google Cloud Run
● Officiel GoogleCloudPlatform 🔑 Nécessite votre clé

Google Cloud Run

par GoogleCloudPlatform · GoogleCloudPlatform/cloud-run-mcp

Déployer et gérer les services Google Cloud Run à partir d'un agent — MCP officiel de Google, compatible avec l'authentification gcloud.

MCP officiel de Google Cloud Platform. Déployez des conteneurs ou du contenu de fichiers vers Cloud Run, listez et inspectez les services, tirez les journaux. Utilise les identifiants par défaut de l'application gcloud — aucun fichier JSON de compte de service dans la configuration. Idéal pour les déploiements pilotés par un agent et les requêtes de journal de diagnostic sur place.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

cloud-run.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "cloud-run": {
      "command": "npx",
      "args": [
        "-y",
        "@google-cloud/cloud-run-mcp"
      ]
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "cloud-run": {
      "command": "npx",
      "args": [
        "-y",
        "@google-cloud/cloud-run-mcp"
      ]
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "cloud-run": {
      "command": "npx",
      "args": [
        "-y",
        "@google-cloud/cloud-run-mcp"
      ]
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "cloud-run": {
      "command": "npx",
      "args": [
        "-y",
        "@google-cloud/cloud-run-mcp"
      ]
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "cloud-run",
      "command": "npx",
      "args": [
        "-y",
        "@google-cloud/cloud-run-mcp"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "cloud-run": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@google-cloud/cloud-run-mcp"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add cloud-run -- npx -y @google-cloud/cloud-run-mcp

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : Google Cloud Run

Déployer un petit service vers Cloud Run à partir de l'agent

👤 Ingénieurs backend, fondateurs indépendants déployant des prototypes ⏱ ~10 min intermediate

Quand l'utiliser : Vous avez un service Node/Python prêt. Vous le voulez actif sur Cloud Run sans basculer de contexte vers la console.

Prérequis
  • SDK gcloud installé + authentifiégcloud auth login && gcloud auth application-default login
  • Un projet GCP avec facturation activéegcloud projects list
Déroulement
  1. Listez les projets, choisissez le bon
    Listez mes projets GCP. Je veux déployer vers celui marqué 'staging'.✓ Copié
    → Projet identifié
  2. Déployez le dossier local
    Déployez ./my-api comme service Cloud Run nommé 'api-staging' dans us-central1. Autorisez les invocations non authentifiées. Utilisez le buildpack détecté automatiquement.✓ Copié
    → Le déploiement se termine, l'URL est renvoyée
  3. Vérifiez
    Obtenez les détails du service. Appelez l'URL avec un test de style curl. Confirmez 200.✓ Copié
    → URL du service fonctionnelle

Résultat : Un service Cloud Run en cours d'exécution en 3-5 minutes, avec l'agent enregistrant l'URL pour vous.

Pièges
  • Le flag non authentifié expose le service publiquement — parfait pour la préparation, mauvais pour la production — Pour tout ce qui s'approche de la production, omettez allow_unauthenticated et utilisez IAM ; placez Cloud Armor devant si l'utilisateur a accès
  • Chaque déploiement crée une nouvelle révision, les anciennes persistent et épinglent les ressources — Nettoyez périodiquement les anciennes révisions avec gcloud, ou configurez la conservation des révisions
Combiner avec : fastmcp · fastapi-mcp

Diagnostiquez un service Cloud Run à partir de ses journaux

👤 Ingénieurs de garde ⏱ ~10 min intermediate

Quand l'utiliser : Un service Cloud Run retourne des erreurs 500. Vous voulez voir les journaux sans ouvrir la console.

Déroulement
  1. Tirez les journaux récents
    Obtenez les 200 dernières entrées de journal pour le service 'api-prod' dans us-central1. Filtrez par gravité ERROR.✓ Copié
    → Entrées de journal d'erreur
  2. Trouvez les motifs
    Groupez les erreurs par modèle de message. Lequel est le plus courant ? Incluez une trace de pile d'exemple.✓ Copié
    → Erreur principale avec trace de pile
  3. Proposez une correction
    Sur la base de la trace de pile, pointez le chemin de code probable. Recommandez un retour à la révision précédente si les erreurs sont concentrées dans le dernier déploiement.✓ Copié
    → Hypothèse de cause racine + action

Résultat : De l'alerte à la décision de retour en 5 minutes.

Pièges
  • La conservation des journaux est courte par défaut (30 jours) — Pour tout ce que vous pourriez devoir consulter plus tard, exportez les journaux vers BigQuery ou GCS via Log Router
Combiner avec : sentry

Déployez un serveur MCP (FastMCP / fastapi-mcp) vers Cloud Run

👤 Ingénieurs de plateforme hébergeant des MCP partagés ⏱ ~30 min advanced

Quand l'utiliser : Vous avez construit un serveur MCP et vous le voulez hébergé pour une utilisation à l'échelle de l'équipe.

Prérequis
  • Projet Dockerfile ou compatible buildpack — Cloud Run peut utiliser des buildpacks pour la plupart des langages
Déroulement
  1. Déployez le serveur
    Déployez ./my-mcp comme service Cloud Run 'acme-mcp', région us-central1. Définissez les variables d'environnement à partir de mon .env.prod. Requérez l'authentification.✓ Copié
    → Service déployé derrière IAM
  2. Accordez l'accès IAM
    Accordez le rôle 'roles/run.invoker' sur ce service au groupe [email protected].✓ Copié
    → L'équipe peut maintenant invoquer
  3. Connectez les clients
    Écrivez la configuration Claude Desktop qui se connecte via gcloud run services proxy ou mcp-remote avec un jeton IAM.✓ Copié
    → L'équipe a la configuration prête à copier-coller

Résultat : Un MCP hébergé par l'équipe avec authentification native GCP, même modèle de déploiement que vos autres services.

Pièges
  • Les connexions SSE se déconnectent sur le délai d'expiration de requête par défaut de 5 minutes de Cloud Run — Définissez --timeout=3600 sur le service ; les connexions MCP ont besoin d'une plus longue tolérance d'inactivité
Combiner avec : fastmcp · fastapi-mcp · mcp-context-forge

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

cloud-run + fastmcp

Écrivez un MCP Python, déployez vers Cloud Run en une seule session

Générez une structure pour un serveur FastMCP exposant notre API de tarification, puis déployez-le vers le service Cloud Run 'pricing-mcp' avec authentification IAM.✓ Copié
cloud-run + sentry

Erreurs Cloud Run → Sentry pour le triage des incidents

Si le taux d'erreur de notre service Cloud Run augmente, récupérez le problème correspondant de Sentry et corrélez les traces de pile avec le dernier déploiement.✓ Copié
cloud-run + mcp-context-forge

Hébergez ContextForge lui-même sur Cloud Run pour fédérer les MCP

Déployez mcp-contextforge-gateway vers Cloud Run avec Redis pour l'état de fédération. Enregistrez nos 3 MCP existants en tant que serveurs principaux.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
list-projects Découvrez quel projet cibler (local uniquement) gratuit
create-project name, project_id? Amorcer un nouveau projet GCP (local uniquement) gratuit
list-services project, region? Voyez ce qui s'exécute dans un projet/région gratuit
get-service project, region, service Inspectez la configuration d'un service spécifique gratuit
get-service-log project, region, service, filter?, limit? Débogage — tirez les journaux récents gratuit
deploy-local-folder folder_path, service, region, project, allow_unauthenticated? Déployez le code que vous avez localement (local uniquement) gratuit (construction) + tarification Cloud Run par requête
deploy-file-contents files: {path,content}[], service, region, project Déployez du code généré par un agent sans fichiers locaux gratuit (construction) + tarification Cloud Run par requête

Coût et limites

Coût d'exécution

Quota d'API
Quotas GCP — généreux pour l'API de déploiement Cloud Run
Tokens par appel
Les réponses de journal peuvent être volumineuses — paginez ou filtrez agressivement
Monétaire
Cloud Run : couche gratuite ~2M req/mois, puis ~$0,40 par million de req + $0,000024 par vCPU-sec
Astuce
Définissez min-instances=0 pour les services non critiques — les démarrages à froid font mal mais le coût tombe à pratiquement zéro au repos

Sécurité

Permissions, secrets, portée

Portées minimales : roles/run.admin roles/iam.serviceAccountUser
Stockage des identifiants : Application Default Credentials via gcloud auth application-default login — aucun fichier clé
Sortie de données : Appels vers *.googleapis.com
Ne jamais accorder : roles/owner

Dépannage

Erreurs courantes et correctifs

Autorisation refusée au déploiement

Votre compte a besoin de roles/run.admin ET roles/iam.serviceAccountUser sur le compte de service d'exécution. Vérifiez via gcloud projects get-iam-policy.

Construction échouée avec 'buildpack not detected'

Ajoutez un Dockerfile, ou un fichier que les buildpacks reconnaissent (package.json pour Node, requirements.txt pour Python, etc.).

Service déployé mais retourne 403

Soit allow_unauthenticated n'était pas défini, soit votre identité d'invocation manque de roles/run.invoker. Décidez : public ou protégé par IAM.

Les connexions SSE MCP se bloquent / se déconnectent

Augmentez --timeout=3600 et assurez-vous que min-instances=1 pour éviter les déconnexions de démarrage à froid.

Alternatives

Google Cloud Run vs autres

AlternativeQuand l'utiliserCompromis
Vercel (pour Next.js)Vous hébergez spécifiquement une application Next.jsExpérience développeur plus simple pour Next.js ; plus étroit que Cloud Run
AWS App Runner / Lambda MCPVous êtes sur AWSModèle serverless comparable, écosystème différent
Fly.ioVous voulez l'edge global par défaut et une tarification plus simpleÉcosystème plus petit ; pas de MCP officiel pour le moment

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills