搭配使用 AlloyDB for PostgreSQL 與 MCP、Gemini CLI 和其他代理程式

本文說明如何將 AlloyDB 執行個體連線至支援模型上下文協定 (MCP) 的各種代理程式。

建議使用 Gemini CLI 專用的 AlloyDB 擴充功能。Gemini CLI 會將基礎 MCP 伺服器直接整合到擴充功能中,因此您不必另外設定伺服器。您可以設定 Gemini Code Assist 使用 Gemini CLI,在 IDE 中享有類似的設定優勢。

此外,支援 MCP 的其他 IDE 和代理程式可以透過 MCP Toolbox for Databases 連線。Toolbox 是開放原始碼 MCP 伺服器,可將 AI 代理連結至您的資料。可處理驗證和連線集區等工作,讓您直接透過 IDE 以自然語言與資料互動。

事前準備

如要連線至 AlloyDB 執行個體並使用可用工具,您必須具備下列任一 Identity and Access Management (IAM) 角色,或是具備同等權限的自訂角色:

工作 角色名稱 必要的身分與存取權管理 (IAM) 角色
使用唯讀工具列出及取得 AlloyDB 資源 AlloyDB 檢視者 roles/alloydb.viewer
連線至執行個體並執行查詢 Cloud AlloyDB 用戶端 roles/alloydb.client
服務使用情形用戶 roles/serviceusage.serviceUsageConsumer
執行管理工作 (例如建立或管理叢集、執行個體和使用者) AlloyDB 管理員 roles/alloydb.admin
使用可觀測性擴充功能 監控檢視者 roles/monitoring.viewer

如要連線至 AlloyDB 執行個體,請先完成下列步驟,設定專案和資料庫。

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. 啟用建立及連線至 AlloyDB 時所需的 Cloud API。

    啟用 API

    1. 在「確認專案」步驟中,按一下「下一步」,確認要變更的專案名稱。

    2. 在「啟用 API」步驟中,按一下「啟用」,啟用下列項目:

      • AlloyDB API
      • Compute Engine API
      • Cloud Resource Manager API
      • Service Networking API

      如果您打算使用與 AlloyDB 位於相同 Google Cloud 專案的虛擬私有雲網路,設定 AlloyDB 的網路連線,就必須啟用 Service Networking API。

      如果您打算使用位於不同 Google Cloud 專案的 VPC 網路,設定 AlloyDB 的網路連線,則必須使用 Compute Engine API 和 Cloud Resource Manager API。

  7. 建立或選取叢集及其主要執行個體
  8. 為環境設定應用程式預設憑證 (ADC)
  9. 建立或重複使用資料庫使用者。準備好輸入使用者名稱和密碼。
  10. 使用 AlloyDB 的 Gemini CLI 擴充功能

    Gemini CLI 是開放原始碼的 AI 代理,可協助程式設計、偵錯、資料探索和內容建立,進而輔助開發工作流程。其任務是提供代理介面,與 Data Cloud 服務和熱門的開放原始碼資料庫互動。

    與 Gemini CLI 的整合是透過專屬擴充功能進行,與標準 MCP Toolbox 連線相比,可提供額外功能。以下各節說明 alloydballoydb-observability 擴充功能,這兩者提供安裝程序和一組工具。開放原始碼擴充功能包含安裝、設定和使用範例的詳細資訊。詳情請參閱「Gemini CLI Extension - AlloyDB for PostgreSQL」。

    alloydb 擴充功能包含查詢資料庫、管理 AlloyDB 資源,以及監控資料庫健康狀態的工具。

    類別 工具 自然語言提示範例
    資料庫作業 list_tables 顯示目前資料庫中的所有資料表。
    execute_sql 執行查詢:SELECT * FROM products WHERE category = 'electronics';
    list_active_queries 資料庫正在執行哪些查詢?
    get_query_plan Explain the query plan for "SELECT * FROM customers WHERE last_seen > '2025-08-01'"
    list_available_extensions 我可以安裝哪些擴充功能?
    list_installed_extensions 列出所有已安裝的擴充功能。
    資源管理
    叢集、執行個體、使用者
    create_cluster us-east1 區域中建立名為 sales-quarterly-db 的 AlloyDB 叢集。
    get_cluster 取得叢集 sales-quarterly-db 的詳細資料。
    list_clusters 列出所有 AlloyDB 叢集。
    create_instance sales-quarterly-db 叢集中建立新的讀取執行個體。
    get_instance 顯示執行個體 sales-quarterly-db-rp 的資訊。
    list_instances 列出 sales-quarterly-db 叢集中的所有執行個體。
    create_user 建立名為 reporting_user 的新資料庫使用者。
    get_user 取得使用者 reporting_user 的資訊。
    list_users 列出所有資料庫使用者。
    wait_for_operation 作業 operation-163562789 的狀態為何?
    資料庫健康狀態與維護 list_autovacuum_configurations 顯示目前的 autovacuum 設定。
    list_memory_configurations 主要執行個體目前的記憶體設定為何?
    list_top_bloated_tables 列出前五個最臃腫的資料表。
    list_replication_slots 顯示所有有效的複寫位置。
    list_invalid_indexes 檢查 orders 資料庫中是否有任何無效的索引。

    alloydb-observability 擴充功能提供統一介面,方便您直接透過 Gemini CLI 管理及監控資料庫效能和健康狀態。

    類別 工具 自然語言提示範例
    觀測能力 get_system_metrics 過去一小時的 CPU 用量等系統指標為何?
    get_query_metrics 顯示過去 15 分鐘的查詢成效指標。

    你可以透過兩種方式使用 AlloyDB 的 Gemini CLI 擴充功能:

    • 獨立指令列工具
    • 透過 Gemini Code Assist 整合至 IDE

    Gemini CLI

    1. 安裝 Gemini CLI
    2. 使用下列指令,從 GitHub 存放區安裝 Gemini CLI 的 AlloyDB 擴充功能:
      gemini extensions install https://github.com/gemini-cli-extensions/alloydb
      
    3. 設定環境變數,連線至 AlloyDB 執行個體:
      export ALLOYDB_POSTGRES_PROJECT="PROJECT_ID"
      export ALLOYDB_POSTGRES_REGION="REGION"
      export ALLOYDB_POSTGRES_CLUSTER="CLUSTER_NAME"
      export ALLOYDB_POSTGRES_INSTANCE="INSTANCE_NAME"
      export ALLOYDB_POSTGRES_DATABASE="DATABASE_NAME"
      

      根據預設,Gemini CLI 的 AlloyDB 擴充功能會使用 [應用程式預設憑證 (ADC)](/authentication/application-default-credentials) 進行驗證。如要改以資料庫使用者身分連線,請設定下列選用環境變數:

      #Optional: Set for database user authentication
      export ALLOYDB_POSTGRES_USER="USERNAME"
      export ALLOYDB_POSTGRES_PASSWORD="PASSWORD"
      

      如要使用私人 IP 位址連線,您也必須設定下列環境變數:

      export ALLOYDB_POSTGRES_IP_TYPE="private"
      
    4. 在互動模式中啟動 Gemini CLI:
      gemini
      
      CLI 會自動載入 Gemini CLI 擴充功能的 AlloyDB 擴充功能和工具,您可以使用這些工具與資料庫互動。

    Gemini Code Assist

    建議您將 Gemini Code Assist 設為使用 Gemini CLI,這樣就不必手動設定 MCP 伺服器。

    1. 請確認已安裝並設定 Gemini CLIalloydb 擴充功能
    2. 設定 Gemini Code Assist,以便使用 Gemini CLI
    3. 直接在 Gemini Code Assist 對話中,以自然語言與 AlloyDB 執行個體互動。

    使用 MCP Toolbox for Databases 連線至其他 IDE

    本節說明如何使用 MCP Toolbox for Databases,從各種代理程式連線至 AlloyDB 執行個體。Toolbox 是開放原始碼的模型上下文協定 (MCP) 伺服器,位於 IDE 和資料庫之間,可為 AI 工具提供控制平面。本節將說明如何使用公開或私人 IP 位址連線至 AlloyDB 執行個體。根據預設,Toolbox 會使用公開 IP 位址,但您可以設定 ALLOYDB_POSTGRES_IP_TYPE 環境變數,如設定範例所示,設定私人 IP 連線。

    安裝 MCP Toolbox for Databases

    如要將 IDE 連線至 AlloyDB,您必須安裝 MCP Toolbox for Databases,這是一項開放原始碼伺服器,可將 AI 代理程式連線至您的資料。

    1. 以二進位檔形式下載最新版 Toolbox。選取與作業系統 (OS) 和 CPU 架構對應的二進位檔。您必須使用 Toolbox v0.15.0 以上版本。

      linux/amd64

      curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/linux/amd64/toolbox

      darwin/arm64

      curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/darwin/arm64/toolbox

      darwin/amd64

      curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/darwin/amd64/toolbox

      windows/amd64

      curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/windows/amd64/toolbox

    2. 將二進位檔設為可執行檔。

      chmod +x toolbox
      
    3. 驗證安裝。

      ./toolbox --version
      

    設定用戶端

    從下列選項中選取代理程式工具:

    Claude 代碼

    1. 安裝 Claude Code
    2. 如果專案根目錄中沒有 .mcp.json 檔案,請建立該檔案。
    3. 新增設定、將環境變數替換為您的值,然後儲存。

    {
      "mcpServers": {
        "alloydb": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","alloydb-postgres","--stdio"],
          "env": {
              "ALLOYDB_POSTGRES_PROJECT": "PROJECT_ID",
              "ALLOYDB_POSTGRES_REGION": "REGION",
              "ALLOYDB_POSTGRES_CLUSTER": "CLUSTER_NAME",
              "ALLOYDB_POSTGRES_INSTANCE": "INSTANCE_NAME",
              "ALLOYDB_POSTGRES_DATABASE": "DATABASE_NAME",
              "ALLOYDB_POSTGRES_USER": "USERNAME",
              "ALLOYDB_POSTGRES_PASSWORD": "PASSWORD"
          }
        }
      }
    }
    

    Claude 電腦版

    1. 開啟 Claude Desktop,然後前往「設定」
    2. 在「開發人員」分頁中,按一下「編輯設定」開啟設定檔。
    3. 新增設定、將環境變數替換為您的值,然後儲存。

    {
      "mcpServers": {
        "alloydb": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","alloydb-postgres","--stdio"],
          "env": {
              "ALLOYDB_POSTGRES_PROJECT": "PROJECT_ID",
              "ALLOYDB_POSTGRES_REGION": "REGION",
              "ALLOYDB_POSTGRES_CLUSTER": "CLUSTER_NAME",
              "ALLOYDB_POSTGRES_INSTANCE": "INSTANCE_NAME",
              "ALLOYDB_POSTGRES_DATABASE": "DATABASE_NAME",
              "ALLOYDB_POSTGRES_USER": "USERNAME",
              "ALLOYDB_POSTGRES_PASSWORD": "PASSWORD"
          }
        }
      }
    }
    
    1. 重新啟動 Claude Desktop。
    2. 新的即時通訊畫面會顯示槌子 (MCP) 圖示和新的 MCP 伺服器。

    Cline

    1. 在 VS Code 中開啟 Cline 擴充功能,然後輕觸「MCP Servers」圖示。
    2. 按一下「設定 MCP 伺服器」開啟設定檔。
    3. 新增下列設定,將環境變數換成您的值,然後儲存。

    {
      "mcpServers": {
        "alloydb": {
         "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","alloydb-postgres","--stdio"],
          "env": {
              "ALLOYDB_POSTGRES_PROJECT": "PROJECT_ID",
              "ALLOYDB_POSTGRES_REGION": "REGION",
              "ALLOYDB_POSTGRES_CLUSTER": "CLUSTER_NAME",
              "ALLOYDB_POSTGRES_INSTANCE": "INSTANCE_NAME",
              "ALLOYDB_POSTGRES_DATABASE": "DATABASE_NAME",
              "ALLOYDB_POSTGRES_USER": "USERNAME",
              "ALLOYDB_POSTGRES_PASSWORD": "PASSWORD"
          }
        }
      }
    }
    

    伺服器連線成功後,會顯示綠色的「有效」狀態。

    Cursor

    1. 在專案根目錄中建立 .cursor 目錄 (如果不存在)。
    2. 如果 .cursor/mcp.json 檔案不存在,請建立並開啟該檔案。
    3. 新增下列設定,將環境變數換成您的值,然後儲存。
    {
      "mcpServers": {
        "alloydb": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","alloydb-postgres","--stdio"],
          "env": {
              "ALLOYDB_POSTGRES_PROJECT": "PROJECT_ID",
              "ALLOYDB_POSTGRES_REGION": "REGION",
              "ALLOYDB_POSTGRES_CLUSTER": "CLUSTER_NAME",
              "ALLOYDB_POSTGRES_INSTANCE": "INSTANCE_NAME",
              "ALLOYDB_POSTGRES_DATABASE": "DATABASE_NAME",
              "ALLOYDB_POSTGRES_USER": "USERNAME",
              "ALLOYDB_POSTGRES_PASSWORD": "PASSWORD"
          }
        }
      }
    }
    
    1. 開啟「游標」,然後依序前往「設定」>「游標設定」>「MCP」。伺服器連線後,會顯示綠色的「有效」狀態。

    Visual Studio Code (Copilot)

    1. 開啟 VS Code,並在專案根目錄中建立 .vscode 目錄 (如果不存在)。
    2. 如果 .vscode/mcp.json 檔案不存在,請建立並開啟該檔案。
    3. 新增下列設定,將環境變數換成您的值,然後儲存。
    {
      "servers": {
        "alloydb": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","alloydb-postgres","--stdio"],
          "env": {
            "ALLOYDB_POSTGRES_PROJECT": "PROJECT_ID",
            "ALLOYDB_POSTGRES_REGION": "REGION",
            "ALLOYDB_POSTGRES_CLUSTER": "CLUSTER_NAME",
            "ALLOYDB_POSTGRES_INSTANCE": "INSTANCE_NAME",
            "ALLOYDB_POSTGRES_DATABASE": "DATABASE_NAME",
            "ALLOYDB_POSTGRES_USER": "USERNAME",
            "ALLOYDB_POSTGRES_PASSWORD": "PASSWORD"
          }
        }
      }
    }
    

    滑浪風帆

    1. 開啟 Windsurf,然後前往 Cascade 助理。
    2. 按一下 MCP 圖示,然後點選「設定」開啟設定檔。
    3. 新增下列設定,將環境變數換成您的值,然後儲存。
    {
      "mcpServers": {
        "alloydb": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","alloydb-postgres","--stdio"],
          "env": {
              "ALLOYDB_POSTGRES_PROJECT": "PROJECT_ID",
              "ALLOYDB_POSTGRES_REGION": "REGION",
              "ALLOYDB_POSTGRES_CLUSTER": "CLUSTER_NAME",
              "ALLOYDB_POSTGRES_INSTANCE": "INSTANCE_NAME",
              "ALLOYDB_POSTGRES_DATABASE": "DATABASE_NAME",
              "ALLOYDB_POSTGRES_USER": "USERNAME",
              "ALLOYDB_POSTGRES_PASSWORD": "PASSWORD"
          }
        }
      }
    }