使用 Bigtable 遠端 MCP 伺服器

本文說明如何使用 Bigtable 遠端 Model Context Protocol (MCP) 伺服器,連線至 AI 應用程式,包括 Gemini CLI、ChatGPT、Claude,以及您開發的自訂應用程式。Bigtable 遠端 MCP 伺服器可讓您從 AI 應用程式查詢 Bigtable。

啟用 Bigtable API 時,系統會啟用 Bigtable 遠端 MCP 伺服器。

Model Context Protocol (MCP) 標準可將大型語言模型 (LLM) 和 AI 應用程式/代理程式連結至外部資料來源的方式標準化。MCP 伺服器可讓您使用工具、資源和提示,從後端服務採取行動及取得更新資料。

本機和遠端 MCP 伺服器有何不同?

本機 MCP 伺服器
通常在本機執行,並使用標準輸入和輸出串流 (stdio) 在同一部裝置上的服務之間通訊。
遠端 MCP 伺服器
在服務的基礎架構上執行,並為 AI 應用程式提供 HTTP 端點,供 AI MCP 用戶端與 MCP 伺服器通訊。如要進一步瞭解 MCP 架構,請參閱 MCP 架構

事前準備

  1. 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
  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 role (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. Enable the Bigtable Admin API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

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

  7. Enable the Bigtable Admin API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. 執行下列指令,安裝 cbt CLI :
    gcloud components install cbt

必要的角色

如要取得使用 Bigtable MCP 伺服器所需的權限,請要求管理員在您要使用 Bigtable MCP 伺服器的專案中,授予下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這些預先定義的角色具備使用 Bigtable MCP 伺服器所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

如要使用 Bigtable MCP 伺服器,必須具備下列權限:

  • 發出 MCP 工具呼叫: mcp.tools.call
  • 授予 Bigtable 資源的完整存取權,並允許您指派 Bigtable IAM 角色: bigtable.admin

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

驗證及授權

Bigtable MCP 伺服器會使用 OAuth 2.0 通訊協定搭配 Identity and Access Management (IAM) 進行驗證及授權。所有Google Cloud 身分皆支援 MCP 伺服器的驗證。

Bigtable 遠端 MCP 伺服器不接受 API 金鑰。

建議您使用 MCP 工具為代理商建立個別身分,以便控管及監控資源存取權。如要進一步瞭解驗證,請參閱「向 MCP 伺服器進行驗證」。

Bigtable MCP OAuth 範圍

OAuth 2.0 會使用範圍和憑證,判斷經過驗證的主體是否有權對資源執行特定動作。如要進一步瞭解 Google 的 OAuth 2.0 範圍,請參閱「使用 OAuth 2.0 存取 Google API」。

Bigtable 具有下列 MCP 工具 OAuth 範圍:

gcloud CLI 的範圍 URI 說明
https://www.googleapis.com/auth/bigtable.admin 可授予 Bigtable 資源的完整存取權,並指派 Bigtable IAM 角色。

在工具呼叫期間存取的資源可能需要其他範圍。如要查看 Bigtable 要求的範圍清單,請參閱「Bigtable Admin API v2 適用的 OAuth 2.0 範圍」。

設定 MCP 用戶端,以使用 Bigtable MCP 伺服器

AI 應用程式和代理程式 (例如 Claude 或 Gemini CLI) 可以例項化 MCP 用戶端,連線至單一 MCP 伺服器。AI 應用程式可以有多個連至不同 MCP 伺服器的用戶端。如要連線至遠端 MCP 伺服器,MCP 用戶端至少須知道遠端 MCP 伺服器的網址。

在 AI 應用程式中,尋找連線至遠端 MCP 伺服器的方法。系統會提示你輸入伺服器的詳細資料,例如名稱和網址。

如果是 Bigtable MCP 伺服器,請視需要輸入下列資訊:

  • 伺服器名稱:Bigtable MCP 伺服器
  • 伺服器網址端點:https://bigtableadmin.googleapis.com/mcp
  • 傳輸:HTTP
  • 驗證詳細資料:視驗證方式而定,您可以輸入 Google Cloud 憑證、OAuth 用戶端 ID 和密鑰,或是代理程式身分和憑證。如要進一步瞭解驗證,請參閱「向 MCP 伺服器進行驗證」。
  • OAuth 範圍:連線至 Bigtable MCP 伺服器時要使用的 OAuth 2.0 範圍

如需特定主機的指引,請參閱下列文章:

如需更多一般指引,請參閱下列資源:

可用的工具

如要查看 Bigtable MCP 伺服器的可用 MCP 工具詳細資料和說明,請參閱 Bigtable MCP 參考資料

列出工具

使用 MCP 檢查器列出工具,或直接將 tools/list HTTP 要求傳送至 Bigtable 遠端 MCP 伺服器。tools/list 方法不需要驗證。

POST /mcp HTTP/1.1
Host: bigtableadmin.googleapis.com
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/list",
}

提示範例

您可以使用下列提示範例建立或刪除 Bigtable 資源,以及取得相關資訊:

  • 「在專案 PROJECT_ID 的可用區 ZONE_ID 中,建立具有 NODES 個節點的執行個體 INSTANCE_ID。」
  • 「列出專案 PROJECT_ID 中的執行個體。」
  • 「Get instance INSTANCE_ID in project PROJECT_ID.」
  • 「Delete instance INSTANCE_ID in project PROJECT_ID.」(刪除專案 PROJECT_ID 中的執行個體 INSTANCE_ID)。
  • 「在專案 PROJECT_ID 的執行個體 INSTANCE_ID 中建立表格 TABLE_ID。」
  • 「列出執行個體 INSTANCE_ID 專案 PROJECT_ID 中的資料表。」
  • 「Get table TABLE_ID in INSTANCE_ID project PROJECT_ID.」(取得 INSTANCE_ID 專案中的 PROJECT_ID 資料表 TABLE_ID)。
  • 「Delete table TABLE_ID in instance INSTANCE_ID project PROJECT_ID.」(刪除專案 PROJECT_ID 中執行個體 INSTANCE_ID 的資料表 TABLE_ID)。

在提示中,請替換下列項目:

  • PROJECT_ID 替換為 Google Cloud 專案 ID。
  • INSTANCE_ID 換成 Bigtable 執行個體 ID。
  • ZONE_ID 替換為叢集執行的區域。
  • TABLE_ID 改成 Bigtable 資料表 ID。
  • 如要控管叢集中的節點數量,請將 NODES 替換為叢集中的節點數量。如未指定,則預設值為 1

Model Armor

Model Armor 是一項Google Cloud 服務,可提高 AI 應用程式的安全性。這項功能會主動篩選 LLM 提示詞和回覆,防範各種風險並支援負責任的 AI 做法。無論您是在雲端環境或外部雲端服務供應商部署 AI,Model Armor 都能協助您防範惡意輸入內容、驗證內容安全性、保護私密資料、維持法規遵循狀態,並在多元的 AI 環境中,持續強制執行 AI 安全政策。

Model Armor 僅適用於特定地區。如果專案已啟用 Model Armor,且對該專案的呼叫來自不支援的區域,Model Armor 會進行跨區域呼叫。詳情請參閱Model Armor 位置

啟用 Model Armor

您必須先啟用 Model Armor API,才能使用 Model Armor。

控制台

  1. 啟用 Model Armor API。

    啟用 API 時所需的角色

    如要啟用 API,您需要服務使用情形管理員 IAM 角色 (roles/serviceusage.serviceUsageAdmin),其中包含 serviceusage.services.enable 權限。瞭解如何授予角色

    啟用 API

  2. 選取要啟用 Model Armor 的專案。

gcloud

開始前,請使用 Google Cloud CLI 搭配 Model Armor API 執行下列步驟:

  1. 在 Google Cloud 控制台中啟用 Cloud Shell。

    啟用 Cloud Shell

    Google Cloud 主控台底部會開啟一個 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已針對您目前的專案設定好相關值。工作階段可能要幾秒鐘的時間才能初始化。

  2. 執行下列指令,為 Model Armor 服務設定 API 端點。

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"

    LOCATION 替換為要使用 Model Armor 的區域。

設定 Google 和遠端 MCP 伺服器的防護功能 Google Cloud

如要保護 MCP 工具呼叫和回應,可以使用 Model Armor 底限設定。底限設定會定義專案適用的最低安全性篩選條件。這項設定會對專案中的所有 MCP 工具呼叫和回應套用一致的篩選器。

設定 Model Armor 底限設定,並啟用 MCP 消毒功能。詳情請參閱「設定 Model Armor 底限設定」。

請參閱下列指令範例:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

PROJECT_ID 替換為 Google Cloud 專案 ID。

請注意下列設定:

  • INSPECT_AND_BLOCK:強制執行類型,可檢查 Google MCP 伺服器的內容,並封鎖符合篩選條件的提示和回應。
  • ENABLED:啟用篩選器或強制執行的設定。
  • MEDIUM_AND_ABOVE:負責任的 AI 技術 - 危險篩選器設定的信心水準。您可以修改這項設定,但較低的值可能會導致更多誤判。詳情請參閱「Model Armor 信心水準」。

使用 Model Armor 停用掃描 MCP 流量

如要停止使用 Model Armor 掃描 Google MCP 流量,請執行下列指令:

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

PROJECT_ID 替換為 Google Cloud 專案 ID。

Model Armor 不會掃描專案中的 MCP 流量。

使用 IAM 拒絕政策控管 MCP 使用情形

身分與存取權管理 (IAM) 拒絕政策可協助您保護遠端 MCP 伺服器。 Google Cloud 設定這些政策,封鎖不必要的 MCP 工具存取權。

舉例來說,您可以根據下列條件拒絕或允許存取:

  • 主體
  • 工具屬性 (例如唯讀)
  • 應用程式的 OAuth 用戶端 ID

詳情請參閱「使用 Identity and Access Management 控制 MCP 使用情形」。

後續步驟