Google Cloud MCP Server

officiel

Interagissez avec les services Google Cloud et gérez vos ressources cloud.

Documentation

gcloud-mcp Servers CI License

Serveur MCP gcloud ☁️

Le serveur Model Context Protocol (MCP) gcloud permet aux assistants IA d’interagir facilement avec l’environnement Google Cloud en utilisant la CLI gcloud. Avec le serveur MCP gcloud, vous pouvez :

  • Interagir avec Google Cloud en langage naturel. Décrivez le résultat souhaité au lieu de mémoriser une syntaxe de commande complexe, des options et des arguments.
  • Automatiser et simplifier les flux de travail complexes. Enchaînez plusieurs opérations cloud en une seule commande reproductible pour réduire l’effort manuel et le risque d’erreur.
  • Abaisser la barrière d’entrée à la gestion cloud. Donnez aux membres de l’équipe moins familiers avec gcloud la possibilité d’effectuer des actions puissantes en toute confiance et en toute sécurité.

📡 Serveurs MCP disponibles

Ce dépôt héberge également d’autres serveurs MCP en plus du serveur MCP gcloud. Une liste à jour se trouve ci-dessous, et les liens vers d’autres serveurs MCP Google Cloud hébergés en dehors de ce dépôt sont ici.

Nom du serveur MCPDescriptionNom du paquetVersion
gcloudInteragir avec Google Cloud via la CLI gcloud en utilisant des invites en langage naturel.gcloud-mcpVersion
observabilityAccéder aux API Google Cloud Observability pour interroger les journaux, les métriques et les traces.observability-mcpVersion
storageInteragir avec Google Cloud Storage pour la gestion des buckets et des objets.storage-mcpVersion
backupdrInteragir avec Google Cloud Backup and Disaster Recovery.backupdr-mcpVersion

🚀 Prise en main

Prérequis

✨ Configurer votre serveur MCP

Gemini CLI et Gemini Code Assist

Pour intégrer les serveurs MCP avec Gemini CLI ou Gemini Code Assist, exécutez la commande de configuration ci-dessous depuis votre répertoire personnel pour le serveur MCP listé dans le tableau. Cela installera le serveur MCP en tant qu’extension Gemini CLI pour l’utilisateur actuel, le rendant disponible pour tous vos projets.

npx @google-cloud/[PACKAGE_NAME] init --agent=gemini-cli

Par exemple, pour gcloud-mcp :

npx @google-cloud/gcloud-mcp init --agent=gemini-cli

Après le processus d’initialisation, vous pouvez vérifier que le serveur gcloud-mcp est correctement configuré en exécutant la commande suivante :

gemini mcp list

> ✓ gcloud: npx -y @google-cloud/gcloud-mcp (stdio) - Connected

Pour d’autres clients IA

Pour utiliser les serveurs MCP de ce dépôt avec d’autres clients, ajoutez l’extrait suivant à leurs fichiers de configuration JSON respectifs pour chaque serveur MCP :

"[SERVER_NAME]": {
  "command": "npx",
  "args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
}

Par exemple, pour gcloud :

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

Instructions pour les outils populaires :

  • Claude Desktop : Ouvrez Claude > Paramètres > Développeur > Modifier la configuration et modifiez claude_desktop_config.json.
  • Cline : Cliquez sur l’icône Serveurs MCP, puis Configurer les serveurs MCP pour modifier cline_mcp_settings.json.
  • Cursor : Modifiez .cursor/mcp.json pour un seul projet ou ~/.cursor/mcp.json pour tous les projets.
  • Gemini CLI (Configuration manuelle) : Si vous n’utilisez pas les extensions, modifiez .gemini/settings.json pour un seul projet ou ~/.gemini/settings.json pour tous les projets.

Pour Visual Studio Code, modifiez le fichier .vscode/mcp.json dans votre espace de travail pour un seul projet ou votre fichier de paramètres utilisateur global pour tous les projets :

"servers": {
  "[SERVER_NAME]": {
    "command": "npx",
    "args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
  }
}

Par exemple, pour gcloud et observability :

"servers": {
  "gcloud": {
    "command": "npx",
    "args": ["-y", "@google-cloud/gcloud-mcp"]
  },
  "observability": {
    "command": "npx",
    "args": ["-y", "@google-cloud/observability-mcp"]
  },
}

🛠 Développement local

Pour plus d’informations sur l’installation du dépôt en local, veuillez consulter development.md

🧰 Outils MCP disponibles

Serveur MCPOutilDescription
gcloudrun_gcloud_commandExécute une commande gcloud. Certaines commandes ont été restreintes à l’exécution par l’agent. Voir Permissions MCP pour plus d’informations.
observabilitylist_log_entriesListe les entrées de journal d’un projet.
list_log_namesListe les noms de journaux d’un projet.
list_bucketsListe les buckets de journaux d’un projet.
list_viewsListe les vues de journaux d’un projet.
list_sinksListe les récepteurs de journaux d’un projet.
list_log_scopesListe les étendues de journaux d’un projet.
list_metric_descriptorsListe les descripteurs de métriques d’un projet.
list_time_seriesListe les données de séries temporelles pour une métrique donnée.
list_alert_policiesListe les politiques d’alerte d’un projet.
list_tracesRecherche des traces dans un projet.
get_traceObtient une trace spécifique par ID dans un projet.
list_group_statsListe les groupes d’erreurs d’un projet.
storagelist_objectsListe les objets dans un bucket GCS.
read_object_metadataLit les métadonnées complètes d’un objet spécifique.
read_object_contentLit le contenu d’un objet spécifique.
delete_objectSupprime un objet spécifique d’un bucket.
write_objectÉcrit un nouvel objet dans un bucket.
update_object_metadataMet à jour les métadonnées personnalisées d’un objet existant.
copy_objectCopie un objet d’un bucket à un autre.
move_objectDéplace un objet d’un bucket à un autre.
upload_objectTéléverse un fichier vers un bucket GCS.
download_objectTélécharge un objet depuis GCS vers un fichier local.
list_bucketsListe tous les buckets d’un projet.
create_bucketCrée un nouveau bucket.
delete_bucketSupprime un bucket.
get_bucket_metadataObtient les métadonnées complètes d’un bucket spécifique.
update_bucket_labelsMet à jour les libellés d’un bucket.
get_bucket_locationObtient l’emplacement d’un bucket.
view_iam_policyAffiche la stratégie IAM d’un bucket.
check_iam_permissionsTeste les autorisations IAM pour un bucket.
get_metadata_table_schemaVérifie si le service GCS insights est activé et renvoie le schéma de table BigQuery pour une configuration de jeu de données insights donnée.
execute_insights_queryExécute une requête SQL BigQuery sur un jeu de données insights et renvoie le résultat.
list_insights_configsListe les noms de toutes les configurations de jeux de données Storage Insights pour un projet donné.
backupdrlist_backup_vaultsListe tous les coffres de sauvegarde dans un projet et un emplacement donnés.
get_backup_vaultObtient les détails d’un coffre de sauvegarde spécifique.
list_backup_plansListe tous les plans de sauvegarde dans un projet et un emplacement donnés.
get_backup_planObtient les détails d’un plan de sauvegarde spécifique.
list_backup_plan_associationsListe toutes les associations entre les plans de sauvegarde et les ressources.
get_backup_plan_associationObtient les détails d’une association de plan de sauvegarde spécifique.
list_datasourcesListe toutes les sources de données dans un coffre de sauvegarde.
get_datasourceObtient les détails d’une source de données spécifique.
list_backupsListe toutes les sauvegardes pour une source de données donnée.
get_backupObtient les détails d’une sauvegarde spécifique.
find_protectable_resourcesDécouvre les ressources (VM, disques, SQL) qui peuvent être protégées.
get_backupdr_operationRécupère le statut d’une opération BackupDR de longue durée.
get_csql_operationRécupère le statut d’une opération Cloud SQL de longue durée.
create_backup_vaultCrée un nouveau coffre de sauvegarde dans un emplacement spécifié.
create_backup_planCrée un nouveau plan de sauvegarde avec des règles et une rétention définies.
update_backup_planModifie un plan de sauvegarde existant.
create_backup_plan_associationAssocie une ressource à un plan de sauvegarde pour démarrer la protection.
restore_backupRestaure une sauvegarde vers une instance ou un disque Compute Engine cible.
csql_restoreRestaure une sauvegarde Cloud SQL vers une instance cible.
delete_backup_vaultSupprime un coffre de sauvegarde.
delete_backup_planSupprime un plan de sauvegarde.
delete_backup_plan_associationSupprime la protection d’une ressource en supprimant son association.
delete_backupSupprime une sauvegarde spécifique d’un coffre.

🔑 Permissions MCP

Les permissions du MCP gcloud sont directement liées aux permissions du compte gcloud actif. Pour restreindre les permissions et opérer selon le principe du moindre privilège, vous pouvez vous authentifier en tant que compte de service via l’usurpation d’identité et attribuer au compte de service un rôle avec des permissions limitées.

Par défaut, le MCP gcloud empêche l’exécution des commandes gcloud qui n’ont pas de sens pour les agents IA. Cela vise à restreindre les commandes pouvant exécuter des entrées arbitraires et initier des sessions interactives. Voir ici pour la liste des commandes refusées.

💫 Autres serveurs MCP Google Cloud

Google Cloud propose ces autres serveurs :

👥 Contribuer

Les contributions sont les bienvenues ! Que vous corrigiez des bugs, partagiez des retours ou amélioriez la documentation, vos contributions sont les bienvenues. Veuillez lire notre Guide de contribution pour commencer.

📄 Notes importantes

Ce dépôt est actuellement en aperçu et peut subir des modifications cassantes. Ce dépôt fournit une solution, pas un produit Google officiellement supporté. Il n’est pas couvert par les Conditions d’utilisation de Google Cloud. Il peut cesser de fonctionner lorsque la spécification MCP, d’autres SDK, ou lorsque d’autres solutions et produits changent. Consultez également notre Politique de sécurité.