Usar o servidor MCP local do Backup e DR

O servidor do Protocolo de Contexto de Modelo (MCP) local do Backup e DR permite que assistentes de IA e aplicativos com tecnologia LLM interajam com segurança com seu ambiente de backup. Ao executar o servidor localmente, você pode usar a IA generativa para gerenciar tarefas de backup e DR, como criar backup vaults e planos de backup ou ativar notificações de alerta, usando comandos de linguagem natural, mantendo o controle sobre seu ambiente local. Saiba mais sobre como usar servidores MCP para interagir entre Google Cloud serviços.

O servidor MCP local do Backup e DR atua como uma ponte entre um host compatível com MCP (como a CLI do Gemini, o ChatGPT ou o Claude Code) e a Google Cloud API Backup e DR.

Como o servidor é executado na sua estação de trabalho, a IA pode usar suas credenciais locais e o caminho de rede para se comunicar diretamente com Google Cloud.

O servidor MCP local do Backup e DR oferece os seguintes benefícios:

  • Gerenciamento orientado por IA: use comandos de linguagem natural para automatizar e simplificar tarefas complexas de backup e DR.
  • Segurança: seus dados permanecem nos perímetros definidos. O servidor local usa a autenticação da CLI gcloud.
  • Solução de problemas simplificada: identifique e alerte os usuários sobre falhas de jobs de backup e restauração e receba etapas de correção para corrigir erros.
  • Descoberta centralizada: interaja em vários Google Cloud serviços, como Cloud Monitoring, Cloud Storage e BigQuery, usando o mesmo ambiente MCP.

Antes de começar

Antes de configurar o servidor MCP local para Backup e DR, verifique se você tem o seguinte:

  • Um projeto do Google Cloud com as APIs Backup e DR, Compute Engine e Cloud SQL ativadas.
  • Um host MCP, como a CLI do Gemini.
  • Um ambiente local com o seguinte:
    • Node.js (v20 ou mais recente)
    • O SDK Google Cloud (CLI gcloud) inicializado e autenticado.

Permissões necessárias

Os usuários precisam de papéis e permissões relevantes do Identity and Access Management (IAM) para realizar as tarefas correspondentes usando o servidor MCP local. Exemplo:

  • roles/backupdr.viewer (para consultar informações e status de metadados)
  • roles/backupdr.restoreUser (para acionar restaurações)

Configurar o servidor MCP local

Para instalar a CLI do Gemini e configurar o servidor MCP local do Backup e DR, siga estas etapas:

  1. Instalar a CLI do Gemini

    Para integrar o servidor MCP local do Backup e DR à CLI do Gemini ou ao Gemini Code Assist, execute este comando de configuração. Isso vai instalar o servidor MCP como uma extensão da CLI do Gemini para o usuário atual, disponibilizando-o para todos os seus projetos.

    npm install -g @google/gemini-cli
    

    Para mais informações, consulte https://geminicli.com/docs/get-started/installation.

  2. Configurar o servidor MCP local do Backup e DR

    Para instalar o servidor MCP do Backup e DR, execute este comando. Por padrão, ele instala o servidor no nível de acesso READ_ONLY.

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

    Após o processo de instalação, você pode verificar se o servidor MCP do Backup e DR está configurado corretamente executando o seguinte comando:

    gemini mcp list
    

    A saída vai mostrar um status semelhante a este:

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

    É possível personalizar o comportamento do servidor MCP usando as seguintes flags.

    1. Configure o nível de acesso.

      O nível de acesso controla quais ferramentas estão disponíveis para o agente de IA.

      • Flag: --access-level
      • Valores: READ_ONLY (padrão), UPSERT, ALL

      • READ_ONLY: fornece ferramentas somente leitura para descoberta e inspeção.

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=READ_ONLY
        
      • UPSERT: fornece ferramentas de descoberta, inspeção, criação e atualização (incluindo restaurações).

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=UPSERT
        
      • ALL: fornece todas as ferramentas, incluindo operações destrutivas, como exclusão.

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=ALL
        
    2. Configurar o arquivo de contexto

    Os arquivos de contexto são um recurso avançado para fornecer contexto instrucional ao modelo do Gemini. O servidor MCP do Backup e DR vem com algumas informações de contexto sobre como usar ferramentas e fluxos de trabalho comuns.

    • Flag: --overwrite-context-file
    • Valores: true, false (padrão)
    • Local: ~/.gemini/backupdr-mcp/GEMINI.md

    Por padrão, o arquivo de contexto só é criado se ele ainda não existir. Para instalar o servidor MCP substituindo o arquivo de contexto, execute o seguinte comando:

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

    Quando --overwrite-context-file está definido como "false", na instalação da extensão, o contexto será criado apenas se ele ainda não existir no diretório.

    Para instalar o servidor MCP local sem substituir o arquivo de contexto, execute o seguinte comando:

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

    Para mais detalhes, consulte Fornecer contexto com arquivos GEMINI.md.

  4. Configurar a autenticação e a autorização do usuário

    O servidor MCP usa o Application Default Credentials (ADC) para realizar operações. As verificações do IAM aplicáveis ao Backup e DR são realizadas no ADC. Para mais informações sobre as credenciais padrão do aplicativo, consulte Configurar o Application Default Credentials.

    1. Para configurar suas credenciais, execute o seguinte comando:

      gcloud auth application-default login
      
    2. Para usar credenciais da conta de serviço em vez das suas, represente uma conta de serviço usando o Application Default Credentials (ADC). Execute o seguinte comando para representar uma conta de serviço:

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

Ferramentas disponíveis

O servidor MCP local do Backup e DR inclui as seguintes ferramentas.

Ferramentas somente leitura

Essas ferramentas permitem a descoberta e a inspeção de recursos de backup e DR sem permitir edições.

Ferramenta Descrição
list_backup_vaults Lista todos os backup vaults em um projeto e local.
get_backup_vault Recebe detalhes de um backup vault específico.
list_backup_plans Lista todos os planos de backup em um projeto e local.
get_backup_plan Recebe detalhes de um plano de backup específico.
list_backup_plan_associations Lista todas as associações entre planos de backup e recursos.
get_backup_plan_association Recebe detalhes de uma associação de plano de backup específica.
list_datasources Lista todas as fontes de dados em um backup vault.
get_datasource Recebe detalhes de uma fonte de dados específica.
list_backups Lista todos os backups de uma determinada fonte de dados.
get_backup Recebe detalhes de um backup específico.
find_protectable_resources Descobre recursos (VMs, discos, SQL) que podem ser protegidos.
get_backupdr_operation Recupera o status de uma operação de backup e DR de longa duração.
get_csql_operation Recupera o status de uma operação de longa duração do Cloud SQL.

Ferramentas de upsert

Essas ferramentas permitem criar e atualizar recursos, incluindo operações de restauração.

Ferramenta Descrição
create_backup_vault Cria um novo backup vault em um local especificado.
create_backup_plan Cria um novo plano de backup com regras e retenção.
update_backup_plan Modifica um plano de backup atual.
create_backup_plan_association Associa um recurso a um plano de backup.
restore_backup Restaura um backup para uma instância ou disco de destino do Compute Engine.
csql_restore Restaura um backup do Cloud SQL para uma instância de destino.

Excluir ferramentas

Essas ferramentas incluem a capacidade de excluir recursos. Ative-as somente quando necessário, definindo o nível de acesso como ALL.

Ferramenta Descrição
delete_backup_vault Exclui um backup vault.
delete_backup_plan Exclui um plano de backup.
delete_backup_plan_association Remove a proteção de um recurso.
delete_backup Exclui um backup específico de um vault.

Exemplos de comandos

Depois que o servidor estiver conectado, você poderá usar comandos de linguagem natural no cliente de IA para gerenciar seu ambiente de backup.

  • Avaliar a integridade do backup em um projeto

    "Mostrar a lista de recursos desprotegidos no projeto PROJECT_ID para a região LOCATION."

    Substitua:

    • PROJECT_ID: o ID do projeto em que você quer verificar a integridade do backup.
    • LOCATION: a região em que seus recursos estão localizados.
  • Criar um backup vault e um plano de backup

    Crie um backup vault chamado VAULT_NAME em LOCATION para proteger o recurso RESOURCE_NAME usando o plano de backup PLAN_NAME.

    Substitua:

    • VAULT_NAME: o nome do novo backup vault.
    • LOCATION: a região em que você quer criar o vault.
    • RESOURCE_NAME: o nome do recurso a ser protegido.
    • PLAN_NAME: o nome do plano de backup a ser aplicado.
  • Auditar backups para conformidade

    "Audite todos os backups no projeto PROJECT_ID na região LOCATION. Depois que a auditoria for concluída, compare as descobertas com minha política de backup corporativa para identificar lacunas de conformidade."

    Substitua:

    • PROJECT_ID: o ID do projeto a ser auditado.
    • LOCATION: a região a ser auditada.
  • Análise da causa raiz de falhas

    Esse comando requer a ferramenta observability. Para instalar essa ferramenta MCP, consulte Ferramentas MCP disponíveis no GitHub.

    "Identifique e investigue a causa raiz da falha de backup do recurso RESOURCE_NAME nos últimos DURATION dias no projeto PROJECT_ID."

    Substitua:

    • RESOURCE_NAME: o nome do recurso com falhas de backup.
    • DURATION: a janela de tempo para a investigação (por exemplo, 7).
    • PROJECT_ID: o ID do projeto em que a falha ocorreu.
  • Restaurar um backup

    "Restaure o último backup bem-sucedido do recurso RESOURCE_NAME do projeto PROJECT_ID. Dê o nome NEW_INSTANCE_NAME à instância restaurada."

    Substitua:

    • RESOURCE_NAME: o nome do recurso a ser restaurado.
    • PROJECT_ID: o ID do projeto que contém o backup.
    • NEW_INSTANCE_NAME: um nome para a instância restaurada.
  • Criar uma política de alertas

    É possível ativar alertas para qualquer combinação de registros e filtros adicionados.

    Esse comando requer a ferramenta gcloud. Para instalar essa ferramenta MCP, consulte Ferramentas MCP disponíveis no GitHub.

    "Crie uma política de alertas baseada em registros chamada ALERT_NAME para acionar qualquer entrada de registro de backupdr.googleapis.com com gravidade ERROR. Envie a notificação dos alertas imediatamente para EMAIL_ADDRESS."

    Substitua:

    • ALERT_NAME: um nome para a nova política de alertas.
    • EMAIL_ADDRESS: o e-mail para receber notificações.

Acessar o servidor usando outros clientes de IA

É possível usar o servidor MCP do Backup e DR com outros clientes.

  • Para fazer isso, adicione o snippet a seguir aos respectivos arquivos de configuração JSON:

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

Instruções para ferramentas conhecidas:

  • Claude Desktop: abra Claude > Settings > Developer > Edit Config e edite claude_desktop_config.json.
  • Cline: clique no ícone Servidores MCP e em Configurar servidores MCP para editar cline_mcp_settings.json.
  • Cursor: edite .cursor/mcp.json para um único projeto ou ~/.cursor/mcp.json para todos os projetos.
  • CLI do Gemini (configuração manual): se você não estiver usando extensões, edite .gemini/settings.json para um único projeto ou ~/.gemini/settings.json para todos os projetos.

  • Para o Visual Studio Code, edite o arquivo .vscode/mcp.json no seu espaço de trabalho para um único projeto ou o arquivo de configurações globais do usuário para todos os projetos:

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

Exoneração de responsabilidade

As operações assistidas por IA ainda estão em evolução. Embora priorizemos a precisão, lembre-se de que as saídas orientadas por modelos podem incluir imprecisões e sempre precisam ser revisadas para garantir a correção.

A seguir