使用 BigQuery 資料移轉服務遠端 MCP 伺服器
本文說明如何使用 BigQuery 資料移轉服務遠端 Model Context Protocol (MCP) 伺服器,連結 Gemini CLI、ChatGPT、Claude 等 AI 應用程式,以及您開發的自訂應用程式。BigQuery 資料移轉服務 MCP 伺服器提供一系列功能,可讓您將自然語言提示傳送至 AI 應用程式,執行各種資料移轉相關工作,包括:
- 列出並取得可用資料來源的詳細資料。
- 建立、管理及列出資料移轉設定。
- 列出並取得資料轉移作業的詳細資料。
- 檢查資料來源的有效憑證。
Model Context Protocol (MCP) 規範大型語言模型 (LLM) 和 AI 應用程式/代理程式連結外部資料來源的標準方式。MCP 伺服器可讓您使用工具、資源和提示,從後端服務執行動作及取得更新資料。
本機和遠端 MCP 伺服器有何不同?
- 本機 MCP 伺服器
- 通常在本機上執行,並使用標準輸入和輸出串流 (stdio),在同一部裝置上的服務之間進行通訊。
- 遠端 MCP 伺服器
- 在服務的基礎架構上執行,並為 AI 應用程式提供 HTTP 端點,供 AI MCP 用戶端與 MCP 伺服器之間的通訊。如要進一步瞭解 MCP 架構,請參閱「MCP 架構」。
無狀態核心
MCP 2026-07-28 版將從雙向有狀態通訊協定變更為無狀態通訊協定。每個 MCP 要求都會自我描述,並可使用標頭進行路徑設定。不需要 initialize/initialized 交握或 Mcp-Session-Id,因為每個要求都包含 HTTP 標頭或 _meta 參數中所需的所有資訊。MCP 伺服器可透過多重往返要求 (MRTR),要求工具所需的額外資訊。
為協助系統在不剖析要求主體的情況下,轉送及處理要求,您必須提供部分 MCP 標頭,包括:
- MCP 規格所需的標頭,例如通訊協定版本標頭和標準要求標頭。
- MCP 伺服器定義的自訂標頭。這些標頭會使用
x-mcp-header屬性,從工具的輸入結構定義鏡像到 HTTP 標頭。舉例來說,MCP 伺服器可能會定義自訂標頭,以指定 Google Cloud 區域或專案 ID。
如要進一步瞭解 MCP 架構,請參閱 MCP 2026-07-28 版的規格和主要變更。
Google 和 Google Cloud 遠端 MCP 伺服器
Google 和 Google Cloud 遠端 MCP 伺服器具備下列功能和優點:- 簡化集中式探索作業
- 受管理的全域或區域 HTTP 端點
- 精細授權
- 使用 Model Armor 保護機制,選擇性確保提示詞和回覆安全無虞
- 集中式稽核記錄
如要瞭解其他 MCP 伺服器,以及 Google Cloud MCP 伺服器適用的安全性與控管控制項,請參閱「Google Cloud MCP 伺服器總覽」。
事前準備
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自體驗產品的實際應用成效。新客戶還能獲得價值 $300 美元的免費抵免額,能用於執行、測試及部署工作負載。
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
如果尚未啟用,請啟用 BigQuery 資料移轉服務 API。
啟用 API 時所需的角色
如要啟用 API,您必須具備
serviceusage.services.enable權限。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「服務使用管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。如果是新專案,系統會自動啟用 BigQuery 資料移轉服務 API。
必要的角色
如要取得使用 BigQuery 資料移轉服務 MCP 伺服器所需的權限,請要求管理員在您要使用 BigQuery 資料移轉服務 MCP 伺服器的專案中,授予下列 IAM 角色:
-
發出 MCP 工具呼叫:
MCP 工具使用者 (
roles/mcp.toolUser)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這些預先定義的角色具備使用 BigQuery 資料移轉服務 MCP 伺服器所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要使用 BigQuery 資料移轉服務 MCP 伺服器,必須具備下列權限:
-
發出 MCP 工具呼叫:
mcp.tools.call
BigQuery 資料移轉服務會使用服務代理程式存取及管理資源。啟用 BigQuery 資料移轉服務並首次使用 API 後,系統會自動為您建立服務代理程式。建立服務代理時,Google 會自動授予預先定義的服務代理角色。
如要瞭解 BigQuery 資料移轉服務權限,請參閱「BigQuery 資料移轉服務 IAM 角色和權限」。
驗證及授權
BigQuery 資料移轉服務的遠端 MCP 伺服器會使用 OAuth 2.0 通訊協定,搭配 Identity and Access Management (IAM) 進行驗證和授權。MCP 伺服器支援所有Google Cloud 身分驗證。BigQuery 資料移轉服務 MCP 伺服器不接受 API 金鑰。建議您為使用 MCP 工具的代理建立獨立身分,以便控管及監控資源存取權。如要進一步瞭解驗證,請參閱「向 MCP 伺服器進行驗證」。
BigQuery 資料移轉服務 MCP OAuth 範圍
OAuth 2.0 會使用範圍和憑證,判斷通過驗證的主體是否有權對資源執行特定動作。如要進一步瞭解 Google 的 OAuth 2.0 範圍,請參閱「使用 OAuth 2.0 存取 Google API」。
BigQuery 資料移轉服務 MCP 伺服器會使用 OAuth 2.0 通訊協定搭配 IAM 進行驗證和授權。所有Google Cloud 身分都支援 MCP 伺服器驗證。
BigQuery 資料移轉服務支援下列 BigQuery MCP 工具 OAuth 範圍:
| gcloud CLI 的範圍 URI | 說明 |
|---|---|
https://www.googleapis.com/auth/bigquery |
查看及管理您在 BigQuery 中的資料,以及查看您 Google 帳戶的電子郵件地址。 |
在工具呼叫期間存取的資源可能需要額外範圍。如要查看 BigQuery 資料移轉服務所需的範圍清單,請參閱 BigQuery 資料移轉服務 API。
設定 MCP 用戶端,以使用 BigQuery 資料移轉服務 MCP 伺服器
AI 應用程式和代理 (例如 Claude 或 Antigravity) 可以例項化 MCP 用戶端,並連至單一 MCP 伺服器。AI 應用程式可有多個用戶端,連線至不同的 MCP 伺服器。如果您的應用程式未列在特定用戶端指南中,則可以使用下列資訊從大多數應用程式連線。
在 AI 應用程式中,尋找新增或連線至遠端 MCP 伺服器的方法。 如果是 BigQuery 資料移轉服務 MCP 伺服器,請視需要輸入下列資訊:
- 伺服器名稱:BigQuery 資料移轉服務 MCP 伺服器
- 伺服器網址或端點:
https://bigquerydatatransfer.googleapis.com/mcp - 傳輸:HTTP
- 驗證詳細資料:視驗證方式而定,您可以輸入 Google Cloud 憑證、OAuth 用戶端 ID 和密鑰,或是代理商身分和憑證。如要進一步瞭解驗證,請參閱「向 MCP 伺服器進行驗證」。
重新導向 URI
如果是網路應用程式和部分桌面應用程式,您必須在建立驗證用的用戶端 ID 和密鑰時,將重新導向 URI 加入許可清單。授權伺服器會使用重新導向 URI 將權杖傳送至應用程式。應用程式的說明文件應指定您必須使用的重新導向 URI。不支援自訂重新導向 URI。
如要瞭解如何設定及連線至 MCP 伺服器的應用程式專屬指引,請參閱用戶端專屬指引。
如需一般指引,請參閱下列資源:
可用的工具
如要查看 BigQuery 資料移轉服務 MCP 伺服器可用 MCP 工具的詳細資料和說明,請參閱 BigQuery 資料移轉服務 MCP 參考資料。
清單工具
使用 MCP 檢查器列出工具,或直接將 tools/list HTTP 要求傳送至 BigQuery 資料移轉服務遠端 MCP 伺服器。「tools/list」方法不需要驗證。
POST /mcp HTTP/1.1
Host: bigquerydatatransfer.googleapis.com
Content-Type: application/json
{
"jsonrpc": "2.0",
"method": "tools/list",
}
應用實例
以下是 BigQuery 資料移轉服務 MCP 伺服器的用途示例:
- 探索支援的資料來源、檢查必要設定參數,以及確認資料來源是否有有效憑證。
- 使用自然語言提示詞建立、更新、檢查及刪除資料移轉設定。
- 手動啟動單一日期的轉移作業,或觸發特定日期範圍的資料補充作業。
- 監控轉移作業的狀態,並檢查轉移作業記錄,以排解轉移失敗的問題。
提示範例
您可以使用下列範例提示探索資料來源、管理轉移設定,以及排解轉移作業問題:
- 「列出專案 PROJECT_ID 和位置 LOCATION中的所有可用資料來源,並檢查我是否擁有 DATA_SOURCE_ID 資料來源的有效憑證。」
- 「列出專案 PROJECT_ID 中 LOCATION 區域的所有資料移轉設定。」
- 「Start a manual transfer run for transfer configuration
TRANSFER_CONFIG_ID in project
PROJECT_ID and location
LOCATION for the date range from
2026-01-01to2026-01-07.」(在專案 PROJECT_ID 和位置 LOCATION 中,針對2026-01-01至2026-01-07的日期範圍,為移轉設定 TRANSFER_CONFIG_ID 啟動手動移轉作業。) - 「Check the status of the latest transfer runs for configuration TRANSFER_CONFIG_ID in project PROJECT_ID. 如有任何執行作業失敗,請顯示轉移記錄並說明發生錯誤的原因。」
在提示中,請替換下列項目:
- PROJECT_ID: Google Cloud 專案 ID。
- LOCATION:移轉設定或資料來源的位置。
- DATA_SOURCE_ID:資料來源 ID,例如
google_ads或scheduled_query。 - TRANSFER_CONFIG_ID:移轉設定 ID。
選用的安全和防護設定
MCP 工具可執行多種動作,因此會帶來新的安全風險和考量。為盡量降低及管理這些風險,Google Cloud 提供預設設定和可自訂的政策,控管機構或專案中 MCP 工具的使用情形。 Google Cloud
如要進一步瞭解 MCP 安全性和管理,請參閱「AI 安全性」。
使用 Model Armor
Model Armor 是一項Google Cloud 服務,旨在提升 AI 應用程式的安全性。這項功能會主動篩選 LLM 提示詞和回覆,防範各種風險並支援負責任的 AI 做法。無論您是在雲端環境或外部雲端供應商部署 AI,Model Armor 都能協助您防範惡意輸入、驗證內容安全性、保護敏感資料、維持法規遵循狀態,以及在多元的 AI 環境中,持續落實 AI 安全政策。
啟用 Model Armor 並啟用記錄功能後,Model Armor 會記錄整個酬載。這可能會導致記錄中的私密資訊外洩。
MCP 要求轉送至 Model Armor
Model Armor 僅在特定區域推出。啟用 Model Armor 後,如果您在 Model Armor 不支援的管轄區使用 MCP 伺服器,不同 MCP 伺服器的呼叫路徑行為可能不同,且可能會違反使用中和傳輸中資料的資料落地法規。如要進一步瞭解個別 MCP 伺服器的行為,請參閱「Model Armor 支援的產品」。啟用 Model Armor
您必須先啟用 Model Armor API,才能使用 Model Armor。
控制台
gcloud
開始之前,請使用 Google Cloud CLI 搭配 Model Armor API 執行下列步驟:
在 Google Cloud 控制台中啟用 Cloud Shell。
Google Cloud 控制台底部會開啟 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已設定適用於您目前專案的值。工作階段可能要幾秒鐘的時間才能初始化。
-
執行下列指令,為 Model Armor 服務設定 API 端點。
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
將
LOCATION替換為要使用 Model Armor 的區域。
設定 Google 和 Google Cloud 遠端 MCP 伺服器的防護機制
如要保護 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 不會自動將這個專案底限設定中定義的規則,套用至任何 Google MCP 伺服器流量。
Model Armor 底限設定和一般設定的影響範圍不只 MCP,由於 Model Armor 會與 Vertex AI 等服務整合,因此您對底限設定所做的任何變更,都可能影響所有整合服務 (不只是 MCP) 的流量掃描和安全行為。
使用 IAM 政策控管 MCP 使用情形
Identity and Access Management (IAM) 拒絕政策和 允許政策可協助您保護 Google Cloud 和 Google MCP 伺服器。
您可以組合多項條件,根據下列項目允許或拒絕存取權,建立自訂安全性和控管政策:
- 主體。
- 工具屬性,例如唯讀屬性。
- 服務名稱或工具名稱。
- 應用程式的 OAuth 用戶端 ID。
詳情請參閱「使用身分與存取權管理功能控管 MCP 使用情形」。
後續步驟
- 請參閱 BigQuery 資料移轉服務 MCP 參考說明文件。
- 進一步瞭解 Google Cloud MCP 伺服器。