Utiliser le serveur MCP local Backup and DR

Le serveur MCP (Model Context Protocol) local Backup and DR permet aux assistants d'IA et aux applications basées sur des LLM d'interagir de manière sécurisée avec votre environnement de sauvegarde. En exécutant le serveur localement, vous pouvez utiliser l'IA générative pour gérer les tâches Backup and DR (création de coffres et de plans de sauvegarde, activation des notifications d'alerte, etc.) à l'aide de prompts en langage naturel, tout en gardant le contrôle sur votre environnement local. Découvrez comment utiliser les serveurs MCP pour interagir entre les Google Cloud services.

Le serveur MCP local Backup and DR sert de passerelle entre un hôte compatible avec MCP (tel que Gemini CLI, ChatGPT ou Claude Code) et l' Google Cloud API Backup and DR.

Comme le serveur s'exécute sur votre poste de travail, l'IA peut utiliser vos identifiants locaux et votre chemin réseau pour communiquer directement avec Google Cloud.

Le serveur MCP local Backup and DR présente les avantages suivants :

  • Gestion basée sur l'IA : utilisez des prompts en langage naturel pour automatiser et simplifier les tâches Backup and DR complexes.
  • Sécurité : vos données restent dans les périmètres que vous avez définis. Le serveur local utilise votre authentification gcloud CLI existante.
  • Dépannage simplifié : identifiez les échecs des tâches de sauvegarde et de restauration, et envoyez des alertes aux utilisateurs. Obtenez également des étapes de correction pour résoudre les erreurs.
  • Découverte centralisée : interagissez entre plusieurs Google Cloud services, tels que Cloud Monitoring, Cloud Storage et BigQuery, à l'aide du même environnement MCP.

Avant de commencer

Avant de configurer le serveur MCP local pour Backup and DR, assurez-vous de disposer des éléments suivants :

  • Un projet Google Cloud dans lequel les API Backup and DR, Compute Engine et Cloud SQL sont activées.
  • Un hôte MCP, tel que Gemini CLI.
  • Un environnement local avec les éléments suivants :
    • Node.js (v20 ou version ultérieure)
    • Google Cloud SDK (gcloud CLI) initialisé et authentifié.

Autorisations requises

Les utilisateurs ont besoin des rôles et autorisations Identity and Access Management (IAM) appropriés pour effectuer les tâches correspondantes à l'aide du serveur MCP local. Exemple :

  • roles/backupdr.viewer (pour interroger les informations et l'état des métadonnées)
  • roles/backupdr.restoreUser (pour déclencher des restaurations)

Configurer le serveur MCP local

Pour installer Gemini CLI et configurer le serveur MCP local Backup and DR, procédez comme suit :

  1. Installer Gemini CLI

    Pour intégrer le serveur MCP local Backup and DR à Gemini CLI ou Gemini Code Assist, exécutez cette commande de configuration. Le serveur MCP sera installé en tant qu'extension Gemini CLI pour l'utilisateur actuel, ce qui le rendra disponible pour tous vos projets.

    npm install -g @google/gemini-cli
    

    Pour en savoir plus, consultez https://geminicli.com/docs/get-started/installation.

  2. Configurer le serveur MCP local Backup and DR

    Pour installer le serveur MCP Backup and DR, exécutez cette commande. Par défaut, le serveur est installé avec le niveau d'accès READ_ONLY.

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

    Une fois le processus d'installation terminé, vous pouvez vérifier que le serveur MCP Backup and DR est correctement configuré en exécutant la commande suivante :

    gemini mcp list
    

    La sortie doit afficher un état semblable à celui-ci :

    > ✓ backupdr (from @google-cloud/backupdr-mcp): npx -y backupdr-mcp --access-level READ_ONLY (stdio) - Connected
    
  3. Configurer le serveur MCP local

    Vous pouvez personnaliser le comportement du serveur MCP à l'aide des indicateurs suivants.

    1. Configurer le niveau d'accès

      Le niveau d'accès contrôle les outils disponibles pour l'agent d'IA.

      • Indicateur : --access-level
      • Valeurs : READ_ONLY (par défaut), UPSERT, ALL

      • READ_ONLY : fournit des outils en lecture seule pour la découverte et l'inspection.

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=READ_ONLY
        
      • UPSERT : fournit des outils de découverte, d'inspection, de création et de mise à jour (y compris les restaurations).

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=UPSERT
        
      • ALL : fournit tous les outils, y compris les opérations destructives telles que la suppression.

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=ALL
        
    2. Configurer le fichier de contexte

    Les fichiers de contexte sont une fonctionnalité puissante qui permet de fournir un contexte d'instructions au modèle Gemini. Le serveur MCP Backup and DR est fourni avec des informations contextuelles sur l'utilisation des outils et des workflows courants.

    • Indicateur : --overwrite-context-file
    • Valeurs : true, false (par défaut)
    • Adresse: ~/.gemini/backupdr-mcp/GEMINI.md

    Par défaut, le fichier de contexte n'est créé que s'il n'existe pas déjà. Pour installer le serveur MCP en écrasant le fichier de contexte, exécutez la commande suivante :

    npx @google-cloud/backupdr-mcp init --agent=gemini-cli --overwrite-context-file=true
    

    Lorsque --overwrite-context-file est défini sur "false", le contexte n'est créé que s'il n'existe pas déjà dans le répertoire lors de l'installation de l'extension.

    Pour installer le serveur MCP local sans écraser le fichier de contexte, exécutez la commande suivante :

    npx @google-cloud/backupdr-mcp init --agent=gemini-cli --overwrite-context-file=false
    

    Pour en savoir plus, consultez Fournir un contexte avec des fichiers GEMINI.md.

  4. Configurer l'authentification et l'autorisation des utilisateurs

    Le serveur MCP utilise les identifiants par défaut de l'application (ADC) pour effectuer des opérations. Les vérifications IAM applicables à Backup and DR sont effectuées sur les ADC. Pour en savoir plus sur les identifiants par défaut de l'application, consultez Configurer les identifiants par défaut de l'application.

    1. Pour configurer vos identifiants, exécutez la commande suivante :

      gcloud auth application-default login
      
    2. Pour utiliser les identifiants d'un compte de service au lieu des vôtres, empruntez l'identité d'un compte de service à l'aide des identifiants par défaut de l'application (ADC). Exécutez la commande suivante pour emprunter l'identité d'un compte de service :

      gcloud auth application-default login --impersonate-service-account [SERVICE_ACCOUNT_EMAIL]
      

Outils disponibles

Le serveur MCP local Backup and DR inclut les outils suivants.

Outils en lecture seule

Ces outils permettent de découvrir et d'inspecter les ressources Backup and DR sans autoriser aucune modification.

Outil Description
list_backup_vaults Répertorie tous les coffres de sauvegarde d'un projet et d'un emplacement.
get_backup_vault Obtient les détails d'un coffre de sauvegarde spécifique.
list_backup_plans Répertorie tous les plans de sauvegarde d'un projet et d'un emplacement.
get_backup_plan Obtient les détails d'un plan de sauvegarde spécifique.
list_backup_plan_associations Répertorie toutes les associations entre les plans de sauvegarde et les ressources.
get_backup_plan_association Obtient les détails d'une association de plan de sauvegarde spécifique.
list_datasources Répertorie toutes les sources de données d'un coffre de sauvegarde.
get_datasource Obtient les détails d'une source de données spécifique.
list_backups Répertorie toutes les sauvegardes d'une source de données donnée.
get_backup Obtient les détails d'une sauvegarde spécifique.
find_protectable_resources Découvre les ressources (VM, disques, SQL) qui peuvent être protégées.
get_backupdr_operation Récupère l'état d'une opération Backup and DR de longue durée.
get_csql_operation Récupère l'état d'une opération Cloud SQL de longue durée.

Outils Upsert

Ces outils permettent de créer et de mettre à jour des ressources, y compris des opérations de restauration.

Outil Description
create_backup_vault Crée un coffre de sauvegarde dans un emplacement spécifié.
create_backup_plan Crée un plan de sauvegarde avec des règles et une conservation.
update_backup_plan Modifie un plan de sauvegarde existant.
create_backup_plan_association Associe une ressource à un plan de sauvegarde.
restore_backup Restaure une sauvegarde sur une instance ou un disque Compute Engine cible.
csql_restore Restaure une sauvegarde Cloud SQL sur une instance cible.

Supprimer des outils

Ces outils incluent la possibilité de supprimer des ressources. Activez-les uniquement lorsque cela est nécessaire en définissant le niveau d'accès sur ALL.

Outil Description
delete_backup_vault Supprime un coffre de sauvegarde.
delete_backup_plan Supprime un plan de sauvegarde.
delete_backup_plan_association Supprime la protection d'une ressource.
delete_backup Supprime une sauvegarde spécifique d'un coffre.

Exemples de prompts

Une fois le serveur connecté, vous pouvez utiliser des prompts en langage naturel dans votre client d'IA pour gérer votre environnement de sauvegarde.

  • Évaluer l'état des sauvegardes dans un projet

    "Affiche la liste des ressources non protégées dans le projet PROJECT_ID pour la région LOCATION."

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet dans lequel vous souhaitez vérifier l'état des sauvegardes.
    • LOCATION : région dans laquelle se trouvent vos ressources.
  • Créer un coffre de sauvegarde et un plan de sauvegarde

    "Crée un coffre de sauvegarde nommé VAULT_NAME dans LOCATION pour protéger la ressource RESOURCE_NAME à l'aide du plan de sauvegarde PLAN_NAME."

    Remplacez les éléments suivants :

    • VAULT_NAME : nom du nouveau coffre de sauvegarde.
    • LOCATION : région dans laquelle vous souhaitez créer le coffre.
    • RESOURCE_NAME : nom de la ressource à protéger.
    • PLAN_NAME : nom du plan de sauvegarde à appliquer.
  • Auditer les sauvegardes pour la conformité

    "Audite toutes les sauvegardes du projet PROJECT_ID dans la région LOCATION. Une fois l'audit terminé, compare les résultats à ma stratégie de sauvegarde d'entreprise pour identifier les écarts de conformité."

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet à auditer.
    • LOCATION : région à auditer.
  • Analyse des causes fondamentales des échecs

    Ce prompt nécessite l'outil observability. Pour installer cet outil MCP, consultez Outils MCP disponibles sur GitHub.

    "Identifie et examine la cause fondamentale de l'échec de la sauvegarde de la ressource RESOURCE_NAME au cours des DURATION derniers jours dans le projet PROJECT_ID."

    Remplacez les éléments suivants :

    • RESOURCE_NAME : nom de la ressource dont les sauvegardes ont échoué.
    • DURATION : période d'investigation (par exemple, 7).
    • PROJECT_ID : ID du projet dans lequel l'échec s'est produit.
  • Restaurer une sauvegarde

    "Restaure la dernière sauvegarde réussie de la ressource RESOURCE_NAME à partir du projet PROJECT_ID. Nomme l'instance restaurée NEW_INSTANCE_NAME."

    Remplacez les éléments suivants :

    • RESOURCE_NAME : nom de la ressource à restaurer.
    • PROJECT_ID : ID du projet contenant la sauvegarde.
    • NEW_INSTANCE_NAME : nom de l'instance restaurée.
  • Créer une règle d'alerte

    Vous pouvez activer des alertes pour n'importe quelle combinaison de journaux et de filtres ajoutés.

    Ce prompt nécessite l'outil gcloud. Pour installer cet outil MCP, consultez Outils MCP disponibles sur GitHub.

    "Crée une règle d'alerte basée sur les journaux nommée ALERT_NAME qui se déclenche sur n'importe quelle entrée de journal de backupdr.googleapis.com avec le niveau de gravité ERROR. Envoie immédiatement une notification des alertes à EMAIL_ADDRESS."

    Remplacez les éléments suivants :

    • ALERT_NAME : nom de la nouvelle règle d'alerte.
    • EMAIL_ADDRESS : adresse e-mail à laquelle envoyer les notifications.

Accéder au serveur à l'aide d'autres clients d'IA

Vous pouvez utiliser le serveur MCP Backup and DR avec d'autres clients.

  • Pour ce faire, ajoutez l'extrait de code suivant à leurs fichiers de configuration JSON respectifs :

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

Instructions pour les outils courants :

  • Claude Desktop : ouvrez Claude > Settings > Developer > Edit Config (Paramètres > Développeur > Modifier la configuration), puis modifiez claude_desktop_config.json.
  • Cline : cliquez sur l'icône "MCP Servers" (Serveurs MCP), puis sur "Configure MCP Servers" (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 d'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": {
      "backupdr": {
        "command": "npx",
        "args": ["-y", "@google-cloud/backupdr-mcp"]
      }
    }
    

Avis de non-responsabilité

Les opérations assistées par l'IA sont encore en cours d'évolution. Bien que nous accordions la priorité à l'exactitude, n'oubliez pas que les résultats basés sur des modèles peuvent contenir des inexactitudes et doivent toujours être vérifiés.

Étape suivante