Backup and DR ローカル MCP サーバーを使用する

Backup and DR ローカル Model Context Protocol(MCP)サーバーを使用すると、AI アシスタントと LLM 搭載アプリケーションがバックアップ環境と安全にやり取りできます。サーバーをローカルで実行すると、生成 AI を使用して、Backup and DR タスク(Backup Vault やバックアップ プランの作成、アラート通知の有効化など)を自然言語プロンプトで管理しながら、ローカル環境を制御できます。 MCP サーバーを使用して サービス間でやり取りする方法の詳細をご確認ください Google Cloud 。

Backup and DR ローカル MCP サーバーは、 MCP 互換ホスト(Gemini CLI、ChatGPT、Claude Code など)と Backup and DR API の橋渡しを行います。 Google Cloud

サーバーはワークステーションで実行されるため、AI はローカルの 認証情報とネットワーク パスを使用して と直接通信できます Google Cloud。

Backup and DR ローカル MCP サーバーには、次の利点があります。

  • AI による管理: 自然言語プロンプトを使用して、複雑な Backup and DR タスクを自動化して 簡素化します。
  • セキュリティ: データは定義された境界内に留まります。ローカル サーバーは、既存の gcloud CLI 認証を使用します。
  • トラブルシューティングの簡素化: バックアップ ジョブと 復元ジョブの失敗を特定してユーザーに通知し、エラーを修正するための修復手順を取得します。
  • 一元的な検出: 同じ MCP 環境を使用して、Cloud Monitoring、Cloud Storage、BigQuery など、複数の Google Cloud サービス 間でやり取りします。

始める前に

Backup and DR のローカル MCP サーバーを設定する前に、次のものがあることを確認してください。

  • Backup and DR、Compute Engine、Cloud SQL API が有効になっている Google Cloud プロジェクト 。
  • Gemini CLI などの MCP ホスト。
  • 次のものがある ローカル環境 。
    • Node.js(v20 以降)
    • Google Cloud SDK(gcloud CLI)が初期化され、認証されている。

必要な権限

ユーザーがローカル MCP サーバーを使用して対応するタスクを実行するには、関連する Identity and Access Management(IAM)のロールと権限が必要です。次に例を示します。

  • roles/backupdr.viewer(メタデータ情報とステータスをクエリする)
  • roles/backupdr.restoreUser(復元をトリガーする)

ローカル MCP サーバーを設定する

Gemini CLI をインストールして Backup and DR ローカル MCP サーバーを設定する手順は次のとおりです。

  1. Gemini CLI をインストールする

    Backup and DR ローカル MCP サーバーを Gemini CLI または Gemini Code Assist と統合するには、次の設定コマンドを実行します。これにより、MCP サーバーが現在のユーザーの Gemini CLI 拡張機能としてインストールされ、すべてのプロジェクトで使用できるようになります。

    npm install -g @google/gemini-cli
    

    詳細については、 https://geminicli.com/docs/get-started/installationをご覧ください。

  2. Backup and DR ローカル MCP サーバーを設定する

    Backup and DR MCP サーバーをインストールするには、次のコマンドを実行します。デフォルトでは、サーバーは READ_ONLY アクセスレベルでインストールされます。

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

    インストール プロセスが完了したら、次のコマンドを実行して、Backup and DR MCP サーバーが正しく構成されていることを確認します。

    gemini mcp list
    

    出力には、次のようなステータスが表示されます。

    > ✓ backupdr (from @google-cloud/backupdr-mcp): npx -y backupdr-mcp --access-level READ_ONLY (stdio) - Connected
    
  3. ローカル MCP サーバーを構成する

    次のフラグを使用して、MCP サーバーの動作をカスタマイズできます。

    1. アクセスレベルを構成します。

      アクセスレベルは、AI エージェントが使用できるツールを制御します。

      • フラグ: --access-level
      • 値: READ_ONLY(デフォルト)、UPSERT、ALL

      • READ_ONLY: 検出と検査のための読み取り専用ツールを提供します。

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=READ_ONLY
        
      • UPSERT: 検出、検査、作成、更新ツール(復元を含む)を提供します。

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=UPSERT
        
      • すべて: 削除などの破壊的なオペレーションを含むすべてのツールを提供します。

        npx @google-cloud/backupdr-mcp init --agent=gemini-cli --access-level=ALL
        
    2. コンテキスト ファイルを構成する

    コンテキスト ファイルは、Gemini モデルに指示コンテキストを提供する強力な機能です。Backup and DR MCP サーバーには、ツールの使用方法と一般的なワークフローに関するコンテキスト情報が付属しています。

    • フラグ: --overwrite-context-file
    • 値: true、false(デフォルト)
    • ロケーション: ~/.gemini/backupdr-mcp/GEMINI.md

    デフォルトでは、コンテキスト ファイルは存在しない場合にのみ作成されます。コンテキスト ファイルを上書きして MCP サーバーをインストールするには、次のコマンドを実行します。

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

    --overwrite-context-file が false に設定されている場合、拡張機能のインストール時に、コンテキストがディレクトリに存在しない場合にのみ作成されます。

    コンテキスト ファイルを上書きせずにローカル MCP サーバーをインストールするには、次のコマンドを実行します。

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

    詳細については、 GEMINI.md ファイルでコンテキストを提供するをご覧ください。

  4. ユーザーの認証と認可を構成する

    MCP サーバーは、アプリケーションのデフォルト認証情報(ADC)を使用してオペレーションを実行します。 Backup and DR に適用される IAM チェックは ADC で実行されます。アプリケーションのデフォルト認証情報の詳細については、 アプリケーションのデフォルト認証情報を設定するをご覧ください。

    1. 認証情報を構成するには、次のコマンドを実行します。

      gcloud auth application-default login
      
    2. 独自の認証情報の代わりにサービス アカウントの認証情報を使用するには、アプリケーションのデフォルト認証情報(ADC)を使用してサービス アカウントの権限を借用します。サービス アカウントの権限を借用するには、次のコマンドを実行します。

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

使用可能なツール

Backup and DR ローカル MCP サーバーには、次のツールが含まれています。

読み取り専用ツール

これらのツールを使用すると、編集を許可せずに Backup and DR リソースを検出して検査できます。

ツール 説明
list_backup_vaults プロジェクトとロケーション内のすべての Backup Vault を一覧表示します。
get_backup_vault 特定の Backup Vault の詳細を取得します。
list_backup_plans プロジェクトとロケーション内のすべてのバックアップ プランを一覧表示します。
get_backup_plan 特定のバックアップ プランの詳細を取得します。
list_backup_plan_associations バックアップ プランとリソース間のすべての関連付けを一覧表示します。
get_backup_plan_association 特定のバックアップ プランの関連付けの詳細を取得します。
list_datasources Backup Vault 内のすべてのデータソースを一覧表示します。
get_datasource 特定のデータソースの詳細を取得します。
list_backups 特定のデータソースのすべてのバックアップを一覧表示します。
get_backup 特定のバックアップの詳細を取得します。
find_protectable_resources 保護可能なリソース(VM、ディスク、SQL)を検出します。
get_backupdr_operation 長時間実行されている Backup and DR オペレーションのステータスを取得します。
get_csql_operation 長時間実行されている Cloud SQL オペレーションのステータスを取得します。

Upsert ツール

これらのツールを使用すると、復元オペレーションを含むリソースの作成と更新を行うことができます。

ツール 説明
create_backup_vault 指定されたロケーションに新しい Backup Vault を作成します。
create_backup_plan ルールと保持期間を使用して新しいバックアップ プランを作成します。
update_backup_plan 既存のバックアップ プランを変更します。
create_backup_plan_association リソースをバックアップ プランに関連付けます。
restore_backup バックアップをターゲットの Compute Engine インスタンスまたはディスクに復元します。
csql_restore Cloud SQL バックアップをターゲット インスタンスに復元します。

削除ツール

これらのツールには、リソースを削除する機能が含まれています。アクセスレベルを ALL に設定して、必要な場合にのみ有効にします。

ツール 説明
delete_backup_vault Backup Vault を削除します。
delete_backup_plan バックアップ プランを削除します。
delete_backup_plan_association リソースの保護を解除します。
delete_backup Vault から特定のバックアップを削除します。

プロンプトの例

サーバーが接続されると、AI クライアントで自然言語プロンプトを使用してバックアップ環境を管理できます。

  • プロジェクト全体のバックアップの健全性を評価する

    「リージョン LOCATION のプロジェクト PROJECT_ID で保護されていないリソースのリストを表示して。」

    次のように置き換えます。

    • PROJECT_ID: バックアップの健全性を確認するプロジェクト ID。
    • LOCATION: リソースが配置されているリージョン。
  • Backup Vault とバックアップ プランを作成する

    「LOCATION に VAULT_NAME という名前の Backup Vault を作成して、バックアップ プラン PLAN_NAME を使用してリソース RESOURCE_NAME を保護して。」

    次のように置き換えます。

    • VAULT_NAME: 新しい Backup Vault の名前。
    • LOCATION: Vault を作成するリージョン。
    • RESOURCE_NAME: 保護するリソースの名前。
    • PLAN_NAME: 適用するバックアップ プランの名前。
  • コンプライアンスのためにバックアップを監査する

    「リージョン LOCATION のプロジェクト PROJECT_ID 内のすべてのバックアップを監査して。監査が完了したら、結果を企業のバックアップ ポリシーと比較して、コンプライアンスのギャップを特定して。」

    次のように置き換えます。

    • PROJECT_ID: 監査するプロジェクト ID。
    • LOCATION: 監査するリージョン。
  • 障害の根本原因分析

    このプロンプトには observability ツールが必要です。この MCP ツールをインストールするには、GitHub で 利用可能な MCP ツール をご覧ください。

    「プロジェクト PROJECT_ID の過去 DURATION 日間のリソース RESOURCE_NAME のバックアップ失敗の根本原因を特定して調査して。」

    次のように置き換えます。

    • RESOURCE_NAME: バックアップが失敗したリソースの名前。
    • DURATION: 調査の期間(例: 7)。
    • PROJECT_ID: 障害が発生したプロジェクト ID。
  • バックアップを復元する

    「プロジェクト PROJECT_ID からリソース RESOURCE_NAME の最後に成功したバックアップを復元して。復元されたインスタンスに NEW_INSTANCE_NAME という名前を付けて。」

    次のように置き換えます。

    • RESOURCE_NAME: 復元するリソースの名前。
    • PROJECT_ID: バックアップを含むプロジェクト ID。
    • NEW_INSTANCE_NAME: 復元されたインスタンスの名前。
  • アラート ポリシーを作成する

    ログと追加されたフィルタの任意の組み合わせでアラートを有効にできます。

    このプロンプトには gcloud ツールが必要です。この MCP ツールをインストールするには、GitHub で 利用可能な MCP ツール をご覧ください。

    「ALERT_NAME」という名前のログベースのアラート ポリシーを作成して、重大度 ERROR の backupdr.googleapis.com からのログエントリでトリガーして。アラートの通知をすぐに EMAIL_ADDRESS に送信して。」

    次のように置き換えます。

    • ALERT_NAME: 新しいアラート ポリシーの名前。
    • EMAIL_ADDRESS: 通知を受信するメール。

他の AI クライアントを使用してサーバーにアクセスする

Backup and DR MCP サーバーは他のクライアントでも使用できます。

  • これを行うには、次のスニペットをそれぞれの JSON 構成ファイルに追加します。

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

一般的なツールの手順は次のとおりです。

  • Claude Desktop: Claude > [設定] > [デベロッパー] > [構成を編集] を開き、 claude_desktop_config.jsonを編集します。
  • Cline: MCP サーバー アイコンをクリックし、[MCP サーバーを構成] をクリックして cline_mcp_settings.jsonを編集します。
  • カーソル: 単一のプロジェクトの場合は .cursor/mcp.json、すべてのプロジェクトの場合は ~/.cursor/mcp.json を編集します。
  • Gemini CLI(手動設定): 拡張機能を使用しない場合は、単一のプロジェクトの場合は .gemini/settings.json、すべてのプロジェクトの場合は~/.gemini/settings.json を編集します。

  • Visual Studio Code の場合は、単一のプロジェクトの場合はワークスペースの .vscode/mcp.json ファイル、すべてのプロジェクトの場合はグローバル ユーザー設定ファイルを編集します。

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

免責条項

AI による支援オペレーションはまだ進化しています。Google は正確性を優先していますが、モデル駆動型の出力には不正確な情報が含まれる可能性があることに留意し、常に正確性を確認してください。

次のステップ