大型语言模型(LLM)彻底改变了我们与 AI 的交互方式,但它们仍主要被困在聊天界面里。让 AI 在 BigQuery 中分析最新销售数据,或在 GKE 中检查集群健康状况,通常需要为每个工具、每个模型、每条工作流分别编写粘合代码。
这正是 Google 托管 MCP 服务器的用武之地:这一企业级方案无需自定义连接器,便可将 AI 代理连接到 BigQuery、Google Maps、Compute Engine(GCE)和 Kubernetes Engine(GKE)等强大的 Google Cloud 基础设施。
这些全托管的远程服务器基于 Anthropic 推出的开放标准 Model Context Protocol(MCP),提供安全、标准化的访问方式,使任何符合 MCP 的客户端(如 Gemini CLI 或 Claude Desktop)都能将 AI 变为主动执行的“操作员”。
在本指南中,我将展示 MCP 与 Google 服务器产品组合的实用架构,并带您逐步完成部署生产可用 MCP 服务器的具体步骤。无论您是要将 AI 与企业数据对齐,还是要自动化 DevOps 任务,都能在几分钟内启动并运行。
初次接触 Google Cloud? 我建议先学习免费的 Introduction to GCP 课程 ,掌握计费、项目与基础服务。
什么是 Model Context Protocol?
由 Model Context Protocol(MCP) 是 Anthropic 于 2024 年 11 月推出的开源标准。它充当通用接口——常被称为“AI 的 USB-C”——用于标准化 AI 模型与代理连接外部数据源、工具和系统的方式。
在 MCP 出现之前,将 AI 代理与数据库、API 或云服务等工具集成,通常需要为每个 AI 模型构建自定义连接器(例如分别为 Claude、Gemini 或 GPT 编写代码),导致集成碎片化激增。
MCP 通过定义单一、一致的协议来解决这一问题:开发者将某个工具或数据源实现为一个 MCP 服务器,任何符合 MCP 的 AI 客户端(如 Claude Desktop、Gemini CLI 或自定义代理)都能无缝发现并使用它。
其核心优势是互操作性与减少重 复工作。为 BigQuery 编写一次 MCP 服务器,即可在所有受支持的 AI 模型间通用,无需额外适配器。这加速了具备代理能力的 AI 系统开发,让代理不仅能回答问题,还能主动推理、查询数据,并在现实世界中执行操作。
客户端从已连接的服务器发现可用工具,LLM 决定调用哪些工具,结果再回流用于进一步推理——这一切都通过 MCP 基于 JSON-RPC 的协议实现标准化。
这种“通用翻译器”的设计正是 Google(及其他厂商)迅速采纳 MCP 的原因:其托管服务器可直接接入该生态,让任何 MCP 客户端都能即时访问 Google Cloud 服务。
什么是 Google MCP 服务器?
Google MCP 服务器是 Google 对 Model Context Protocol(MCP)的全托管远程实现。自 2025 年 12 月发布以来,这些企业级服务器将包括 BigQuery、Google Maps、GCE 与 GKE 在内的强大 Google Cloud 服务,以标准化、可发现的工具形式对外暴露,任何符合 MCP 的 AI 客户端都可立即使用。
与需要自我托管、维护、扩缩容与自定义安全加固的社区或开源 MCP 服务器不同,Google 的托管服务器运行在 Google 的基础设施上。它们提供:
零部署开销: 只需在项目中启用服务,并将客户端指向官方端点(如 https://bigquery.googleapis.com/mcp )。
企业级可靠性: 高可用、自动扩缩容与全球端点。
内置安全: 基于 IAM 的身份验证、Model Armor(Google 的 LLM 防火墙,用于防注入与防数据外泄)、审计日志与最小权限控制。
治理: 可在项目或组织层面集中启用/停用。
该技术释放了 具备代理能力的工作流 。AI 不再只是解释 SQL 查询如何工作,而是能实际在 BigQuery 中执行查询、分析结果并给出下一步业务建议。
尽管这些代理可以自主行动,Google 的实现支持“人参与在环”的配置,确保在进行关键基础设施变更前,由人工进行审阅与批准。
如果您对 AI 驱动的浏览器自动化感兴趣,推荐查看我们的 Chrome DevTools MCP 教程。
Google 的 MCP 服务器产品组合
Google 提供不断增长的全托管 MCP 服务器集合,让关键云服务可立即作为 AI 代理的工具使用。服务器按功能分类,使代理无需自定义代码即可处理从数据分析到基础设施管理的各类任务。
该生态将服务器分为两大类:
数据智能: 专注于查询、分析与基于真实世界数据的对齐。
基础设施运维: 实现对计算资源的控制与监控。
数据智能服务器
BigQuery 与 Maps MCP 服务器为在工作流中纳入数据提供了令人兴奋的机会。
BigQuery
BigQuery MCP 服务器允许代理:
直接在数据集上执行 SQL 查询
列出可用的数据集与数据表
检索架构元数据与示例数据
运行分析作业,包括通过 BigQuery ML 进行推理
这使代理能够自主进行复杂数据分析、生成报告或进行趋势预测。
Google Maps
Google Maps MCP 服务器由 Grounding Lite 与 Places API 提供支持,并支持:
正向与逆向地理编码
地点搜索与详情获取
路线计算与路径指引
距离矩阵计算
使用场景 :实时商业智能与物流优化。代理可以在 BigQuery 中查询销售数据,与 Maps 的地理洞察交叉参考,并给出配送路径优化建议——全部在单次推理循环中完成。
基础设施运维服务器
在基础设施方面,您可以使用 Kubernetes Engine(GKE)与 Compute Engine(GCE)MCP 服务器。
Google Kubernetes Engine
GKE MCP 服务器开放如下操作:
列出集群、节点与 Pod
检查集群健康与资源使用率
读取日志与事件
扩缩容部署(需具备相应 IAM 权限)
Google Compute Engine
GCE MCP 服务器支持:
列出、启动、停止与重启虚拟机实例
列出磁盘或机器类型
查询实例元数据与状态
使用场景 :面向 DevOps 团队的自动化故障排查与“ChatOps”。代理可通过 GKE 工具检测 Pod 崩溃,结合来自 GCE 的 VM 指标进行关联,并发起修复步骤——将平均恢复时间从数小时缩短至数分钟。
Google 仍在持续扩展此产品组合(截至 2026 年初,Cloud Storage 与 AlloyDB 处于预览阶段),让更多 Google Cloud 服务原生可被代理访问。
Google MCP 服务器核心架构
MCP 的强大之处在于其灵活而标准化的通信层,无论您是在本地做原型,还是在规模化运行生产级代理,都能实现无缝连接。Google 的托管 MCP 服务器在企业部署中主要使用可流式传输的远程 HTTP,而本地开发则利用 stdio。
通过 stdio 的本地通信
stdio(标准输入/输出)传输是运行 MCP 服务器的最简方式。在此模式下,MCP 客户端(如 Claude Desktop 或自定义代理)将服务器作为同机子进程启动,通过管道直接通信,无需网络。
优点:
开发与测试的设置极其简单
天然安全(无暴露端口或网络攻击面)
低延迟
缺点:
无法在多台机器或团队间共享
可扩展性有限(受限于客户端主机)
对多会话并发无内置支持
该模式非常适合试验自定义 MCP 服务器,或在改为远程之前测试连接。
通过可流式 HTTP 的远程通信
对于生产与企业场景,Google 的托管服务器(以及自托管的自定义服务器)使用基于单一持久端点的可流式 HTTP。这取代了早期的 Server-Sent Events(SSE)方式,带来更健壮的设计,支持:
所有交互均使用 HTTP POST 请求
可选的双向流式传输,支持大型或增量响应(例如流式传输 BigQuery 结果)
基于会话 ID 的有状态会话
并发连接以支持多工具并行调用
Google 的托管端点遵循一致模式,例如:
BigQuery: https://bigquery.googleapis.com/mcp
Maps: https://mapstools.googleapis.com/mcp
Compute: https://compute.googleapis.com/mcp
所有流量均使用 Google ID 令牌(OAuth2)进行保护,确保调用通过 IAM 进行身份验证与授权。
序列流程可能如下:
客户端通过 POST 向 /mcp 发送工具发现/请求。
服务器校验身份并路由至后端服务。
后端执行(例如在 BigQuery 中运行 SQL)。
响应以分块形式(JSON-RPC 格式)回传,以高效处理大输出。
开始使用 Google MCP 服务器
与自托管方案相比,Google 的 MCP 服务器所需设置极少,是其一大优势。接下来我们在步骤中会清晰区分托管与自定义服务器。
托管的 Google MCP 服务器: 适用于 BigQuery、Maps、GCE 与 GKE 等服务,由 Google 全程托管。您无需部署任何东西——只需在项目中启用端点、授予 IAM 权限并配置客户端,即可开箱即用。
自定义 MCP 服务器: 用于内部工具、第三方 API 或高级扩展,需自行构建与部署(例如使用 Google 的 MCP Toolbox)。通常部署到 Cloud Run 以获得可扩展性。
为托管服务器设置 Google Cloud 环境
按照以下步骤(基于官方教程)启用并准备托管 MCP 服务器。
前提条件
项目设置与 API 启用
在 Google Cloud 控制台中创建或选择一个项目。
如未启用计费,请先启用。
启用核心服务 API(在 Cloud Shell 或本地终端中):
gcloud auth list # Verify you're logged in
gcloud config list project # Check current project
gcloud config set project YOUR_PROJECT_ID # If needed
gcloud services enable bigquery.googleapis.com \
compute.googleapis.com \
container.googleapis.com \
mapstools.googleapis.com技术支持
请注意,Maps MCP 需要其独立的 API 密钥用于计费与配额。使用以下命令创建:
gcloud alpha services api-keys create --display-name="Maps-MCP-Key"技术支持
复制显示的 keyString——稍后配置客户端时会用到。
启用托管 MCP 服务器(测试版)
MCP 服务需要显式进行测试版启用:
export PROJECT_ID=$(gcloud config get-value project)
export USER_EMAIL=$(gcloud config get-value account)
gcloud beta services mcp enable bigquery.googleapis.com --project=$PROJECT_ID
gcloud beta services mcp enable mapstools.googleapis.com --project=$PROJECT_ID
gcloud beta services mcp enable compute.googleapis.com --project=$PROJECT_ID
gcloud beta services mcp enable container.googleapis.com --project=$PROJECT_ID技术支持
IAM 配置
为您的账号授予 MCP 工具用户角色:
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member="user:$USER_EMAIL" \
--role="roles/mcp.toolUser"技术支持
添加基于最小权限的特定服务角色,例如:
托管服务器现已就绪!端点如下:
BigQuery: https://bigquery.googleapis.com/mcp
Maps: https://mapstools.googleapis.com/mcp
Compute(GCE & GKE): https://compute.googleapis.com/mcp
将自定义远程 MCP 服务器部署到 Cloud Run
对于超出 Google 托管组合之外的自定义工具,可使用如 FastMCP(Python)等库自建 MCP 服务器,并部署到 Cloud Run,以实现可扩展与团队共享。我们不深入细节,仅给出流程的高层概览。
高层步骤 :
创建一个 Python 项目,并添加 FastMCP 作为依赖(可用 uv 等工具)。
实现服务器代码(如 server.py),定义自定义工具,并使用 transport="streamable-http"。
编写精简 Dockerfile(基于 python:slim),安装依赖并在 $PORT 上运行服务器。
启用所需 API(Cloud Run、Artifact Registry、Cloud Build)。
直接从源代码部署,或构建/推送容器。
加固服务:要求 IAM 身份验证(--no-allow-unauthenticated),为授权主体授予 roles/run.invoker,并在客户端连接时使用身份令牌。
gcloud run deploy your-mcp-server \
--source . \
--region=us-central1 \
--no-allow-unauthenticated技术支持
对于简单服务器,此流程耗时不到 10 分钟,并提供具备自动扩缩容的生产级托管能力。
Google MCP 服务器的客户端配置与集成
部署(或启用)MCP 服务器后,将其连接到 AI 客户端,才能真正释放威力。本节介绍如何配置常见客户端以使用 Google 托管 MCP 服务器,以及如何编写程序化代理。
使用 MCP Inspector 进行测试
MCP Inspector 提供了一个简洁的基于 Web 的 UI,可用于探索任何 MCP 服务器,包括 Google 托管的服务器。它在排查身份验证问题、发现精确的工具名称/参数,以及查看真实响应方面尤其有用。
流程如下:
启动 Inspector
连接到 Google 托管的 MCP 服务器
探索并测试工具
在终端中运行以下命令启动 Inspector:
npx @modelcontextprotocol/inspector技术支持
这会启动一个本地 Web 服务器,并在默认浏览器中打开 Inspector 界面。
接下来我们连接到一个 Google MCP 服务器。以 Google Maps 为例。
在 Inspector UI 左侧,我们将配置 MCP Inspector 连接到 Google Maps MCP 服务器。请按以下说明输入具体内容与数值:
Transport Type: 选择 Streamable HTTP
URL: 输入 https://mapstools.googleapis.com/mcp
Connection Type: 选择 via Proxy (这将使用您已登录的 gcloud 凭据安全处理 Google 身份验证)。
Custom Headers: 添加一个请求头
点击 Connect 。
若一切顺利,您会看到 MCP Inspector 成功连接至服务器。在右侧面板中,点击 List Tools ,即可获取 Google Maps MCP 服务器所支持的工具。
让我们来探索并测试这些工具:
选择任意工具查看其完整 JSON 模式:描述、参数(含类型与必填字段)以及示例。
填写参数(如 query: "best coffee in Pune, Maharashtra"),然后点击 Invoke 。
真实结果将即时返回,对于大响应会以分块形式进行流式传输。
对于 BigQuery 与 Compute 服务器,流程完全相同且更为简便,因为不需要 API 密钥请求头。身份验证将自动通过代理完成。
配置 Gemini CLI
Gemini CLI 是 Google 官方的开源终端代理,原生深度集成 MCP 服务器。它是构建具备代理能力工作流的最顺畅起点。
安装 Gemini CLI
使用以下命令安装 Gemini CLI:
npm install -g @google/gemini-cli@latest技术支持
添加服务器并测试连接
我们再次以 Maps 为例。添加 Google Maps MCP 服务器时,使用以下命令,并将 YOUR_MAPS_API_KEY 替换为先前创建的 Maps API 密钥。
gemini mcp add -s user -t http -H 'X-Goog-Api-Key: YOUR_MAPS_API_KEY' maps-grounding-lite-mcp https://mapstools.googleapis.com/mcp技术支持
在新的 Gemini 会话中,使用 /mcp list 命令验证连接。
在第一次交互中,我们提出一个简单的自然语言问题:
“纽约有哪些实惠的早餐店?”
Gemini 会自动选择 Maps 工具。在您同意执行后,它会调用这些工具并返回格式化结果。
成功了!我们获得了如下响应:
Here are some economical breakfast places in New York:
Good Morning Breakfast is a breakfast restaurant located at 1216 Broadway, New York, NY 10001. It is open from 6:00 AM to 12:00 PM on weekdays and 6:30 AM to 12:30 PM on Saturdays. They serve breakfast and lunch and have vegetarian options. The price range is $1-$10.
Andrews NYC Diner is a diner located at 463 7th Ave, New York, NY 10018. They are open from 6:00 AM to 10:00 PM on weekdays, 6:00 AM to 11:00 PM on Fridays and Saturdays, and 7:00 AM to 11:00 PM on Sundays.
They serve breakfast, lunch, and dinner, and have outdoor seating and a children's menu.
The price range is $10-$20.
George's is an American restaurant located at 89 Greenwich St, New York, NY 10006. They are open from 7:00 AM to 6:00 PM daily. They serve breakfast, lunch, and dinner, and have outdoor seating and a children's menu. The price range is $10-$20.
New York Luncheonette is an American restaurant located at 135 E 50th St, New York, NY 10022. They are open from 7:00 AM to 10:00 PM daily. They serve breakfast, lunch, and dinner, and have a children's menu.
The price range is $10-$20.技术支持
这是 Gemini CLI 的经典“Hello World”时刻:添加服务器后清晰的工具列表,随后以自然语言查询触发真实的 Maps 工具调用。
将 Gemini CLI 与 Google Maps MCP 服务器搭配使用
为测试更高级的推理能力并结合 Maps 数据,我们给出如下提示词:
"从孟买自驾去果阿,规划一条中途有风景可午餐的路线, 并推荐一家当地不错的餐厅。"
当您发送该提示后,AI 代理(Gemini 或 Claude)将仅使用 Google Maps MCP 工具,执行复杂的多步推理循环:
计算完整路线: 代理调用 compute_routes,起点为“孟买”,终点为“果阿”。返回距离约 566 公里,持续时间约 11 小时 41 分(考虑路况)。
推理中点位置: 代理计算出中途(约 280–300 公里)位于孔坎地区,具体在奇普伦(Chiplun)附近,以河景、山谷与风光著称。
搜索具风景的餐厅: 使用 search_places 针对奇普伦/拉特纳吉里区域进行关键词偏置,筛选高评分、户外/景观优先、可供午餐的选项。
选择并描述最佳选项: 最终挑选亮眼地点(如 The Riverview Restaurant,位于奇普伦),并突出其户外座位与放松氛围。
该响应为实时生成。路线时长直接来自您在调试输出中看到的 compute_routes 调用,餐厅推荐则基于真实的 Places API 数据:无硬编码事实,无幻觉,仅是安全、最新的工具使用。
以下是 Gemini CLI 调用工具并输出推荐的方式:
compute_routes (maps-grounding-lite-mcp MCP Server) {"destination": {"address": "Goa"}, "origin": {"address": "Mumbai" }}
{
"routes": [
{
"distanceMeters": 566414,
"duration": "42095s"
}
]
}
* A great place to stop for a scenic lunch on your drive from Mumbai to Goa is Chiplun, which is roughly halfway. I recommend The Riverview Restaurant in Chiplun. It offers outdoor seating and is a great spot to relax and enjoy a meal with a view.
The drive from Mumbai to Goa is approximately 566 km and will take about 11 hours and 40 minutes without stops. Enjoy your trip技术支持
以编程方式与 LangChain 或 LangGraph 集成
相比 Gemini CLI 或 Claude Desktop 这类交互式客户端,当您以代码构建定制的、可用于生产的 AI 代理时,Google 托管 MCP 服务器的真正威力才会尽显。开源的 LangChain 生态 通过 langchain-mcp-adapters 包,使任意远程 MCP 服务器转化为标准的 LangChain 工具,从而简化这一过程。
此方法让您对工具发现、身份验证与调用拥有完全可见性:非常适合调试、构建自定义工具路由器,或集成到既有的异步工作流中。
使用 LangChain 连接到 BigQuery MCP 服务器
为便于理解,我们通过示例展示。以下完整且可运行的脚本演示如何:
使用应用默认凭据(ADC)对 Google Cloud 进行身份验证
通过可流式 HTTP 连接到托管的 BigQuery MCP 端点
发现所有可用工具
调用特定工具(list_dataset_ids)并打印真实结果
import asyncio
import google.auth
import google.auth.transport.requests
import httpx
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client
from langchain_mcp_adapters.tools import load_mcp_tools
async def list_and_invoke_bigquery():
# 1. Authenticate with Google Cloud (run: gcloud auth application-default login)
credentials, project_id = google.auth.default(
scopes=["https://www.googleapis.com/auth/cloud-platform"]
)
auth_request = google.auth.transport.requests.Request()
credentials.refresh(auth_request)
url = "https://bigquery.googleapis.com/mcp"
print(f"Connecting to: {url}...")
# 2. Setup authenticated HTTP client
async with httpx.AsyncClient(headers={
"Authorization": f"Bearer {credentials.token}",
"x-goog-user-project": project_id,
"Content-Type": "application/json"
}) as http_client:
# 3. Establish streamable HTTP transport and MCP session
async with streamable_http_client(url, http_client=http_client) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
# 4. Discover all tools exposed by Google's BigQuery MCP server
tools = await load_mcp_tools(session)
print(f"\n--- DISCOVERY: Found {len(tools)} tools ---")
for tool in tools:
print(f"Tool: {tool.name}")
# 5. Invoke a specific tool: list_dataset_ids
print(f"\n--- INVOCATION: Fetching datasets for project '{project_id}' ---")
dataset_tool = next((t for t in tools if t.name == "list_dataset_ids"), None)
if dataset_tool:
try:
result = await dataset_tool.ainvoke({"project_id": project_id})
print("SUCCESS! Datasets in your project:")
print(result)
except Exception as e:
print(f"Error invoking tool: {e}")
else:
print("Tool 'list_dataset_ids' not found.")
if __name__ == "__main__":
asyncio.run(list_and_invoke_bigquery())技术支持
当在正确配置的 GCP 项目中执行该脚本时,将产生类似以下输出:
Connecting to: https://bigquery.googleapis.com/mcp…
--- DISCOVERY: Found 5 tools ---
Tool: list_dataset_ids
Tool: get_dataset_info
Tool: list_table_ids
Tool: get_table_info
Tool: execute_sql
--- INVOCATION: Fetching datasets for ‘project’ ---
SUCCESS! Output from BigQuery: (...)技术支持
这表明:
通过 ADC 实现了安全身份验证
与 Google 托管的远程服务器握手成功
完成了完整的工具发现
实时执行并返回您实际的 BigQuery 数据集
该低层模式在以下场景中极具价值:
调试连接或权限问题
构建自定义工具选择逻辑
将 MCP 集成到 FastAPI 服务、后台工作器或流式应用中
需要对异步流程进行精确控制
在采用此方式验证连通性后,您即可放心扩展到更高层的框架,例如 LangGraph 代理(如前述示例所示),或将这些工具接入任何兼容 LangChain 的系统。
有了这一基础,Google MCP 服务器将成为您 Python AI 技术栈的安全、可用于生产的扩展,无需任何自定义粘合代码。
Google MCP 服务器的安全最佳实践
在 Google 的托管 MCP 服务器中,安全并非事后考虑,而是自底向上构建的。依托于 Google 的基础设施,并与 Google Cloud 的身份与访问管理深度集成,这些服务器提供远胜于自托管或实验性方案的企业级防护。
身份与访问管理
Google Cloud 使用强大的 IAM(身份与访问管理)框架来管理谁(或什么)可以调用您的 MCP 工具。
在基于角色的访问控制(RBAC)下,每个 AI 代理都应拥有独立的服务账号。该控制依赖两个不同的授权层:
网关角色: 要使用任何 Google MCP 工具,身份必须具备 roles/mcp.toolUser 角色。
服务特定权限: 由于 mcp.toolUser 只允许连接,您仍需为具体操作授予特定权限。例如,若 AI 需要查询数据,则需 roles/bigquery.jobUser。相反,如果它只需查看 VM 状态,应授予 roles/compute.viewer 而非 roles/compute.admin。
Model Armor
Model Armor 是一项旨在提升 AI 应用安全性与可靠性的 Google Cloud 服务。它通过主动筛查 LLM 的提示与响应,防范各类风险,确保负责任的 AI 实践。
无论您在 Google Cloud 还是其他云提供商上部署 AI,Model Armor 都能帮助您防止恶意输入、验证内容安全、保护敏感数据、保持合规,并在各 AI 应用间一致地执行安全与治理策略。
Model Armor 的作用类似专门针对 AI 的 Web 应用防火墙(WAF):
提示净化: 在请求抵达 MCP 服务器前,筛查每个传入提示中的注入攻击与越狱尝试。
内容安全: 过滤有害内容,并可配置敏感数据防护(SDP)模板,以在提示与工具输出中遮蔽个人身份信息(姓名、社保号、信用卡号)。
基线设置: Google 为 MCP 推荐特定的“安全基线”,包括对恶意 URL 与提示注入模式的强制扫描。
可观测性与合规
通过 Google MCP 服务器发起的每次工具调用都会被记录。
云日志: MCP 操作会自动路由到 Cloud Logging。记录包括代理 ID、会话 ID、调用的具体工具与载荷。
审计追踪: 通过为 mcp.googleapis.com 服务启用数据访问日志,您可以保留合规审查所需的永久记录,从而回答:“谁(哪个代理)在何时访问了哪些数据?”
结语
不必再为每个模型或工具编写脆弱的自定义连接器:Google 的托管 MCP 服务器标志着在 Google Cloud 上构建具备代理能力的 AI 进入新阶段。通过采用开放的 MCP 标准,并为 BigQuery、Google Maps、Compute Engine 与 GKE 提供全托管、企业级实现,Google 消除了构建可靠、可执行代理的最大障碍。
正如本指南所展示的,这一标准化架构消除了“粘合代码”的噩梦,使您无需为每个客户端重写工具,便可从本地原型扩展到 Cloud Run 部署。此外,借助 Google Cloud IAM 与 Model Armor,您的代理可原生抵御现代 AI 威胁。
从“聊天机器人”到“代理”的跃迁正在发生。掌握 Google MCP 服务器,您构建的将不再只是能回答问题的 AI,而是一位能以思想速度操作您云环境的数字队友。
准备将本指南所学转化为职业级能力?立即报名我们的 Associate AI Engineer for Developers 职业路径。
大型语言模型(LLM)彻底改变了我们与 AI 的交互方式,但它们仍主要被困在聊天界面里。让 AI 在 BigQuery 中分析最新销售数据,或在 GKE 中检查集群健康状况,通常需要为每个工具、每个模型、每条工作流分别编写粘合代码。
这正是 Google 托管 MCP 服务器的用武之地:这一企业级方案无需自定义连接器,便可将 AI 代理连接到 BigQuery、Google Maps、Compute Engine(GCE)和 Kubernetes Engine(GKE)等强大的 Google Cloud 基础设施。
这些全托管的远程服务器基于 Anthropic 推出的开放标准 Model Context Protocol(MCP),提供安全、标准化的访问方式,使任何符合 MCP 的客户端(如 Gemini CLI 或 Claude Desktop)都能将 AI 变为主动执行的“操作员”。
在本指南中,我将展示 MCP 与 Google 服务器产品组合的实用架构,并带您逐步完成部署生产可用 MCP 服务器的具体步骤。无论您是要将 AI 与企业数据对齐,还是要自动化 DevOps 任务,都能在几分钟内启动并运行。
初次接触 Google Cloud? 我建议先学习免费的 Introduction to GCP 课程,掌握计费、项目与基础服务。
什么是 Model Context Protocol?
由 Model Context Protocol(MCP) 是 Anthropic 于 2024 年 11 月推出的开源标准。它充当通用接口——常被称为“AI 的 USB-C”——用于标准化 AI 模型与代理连接外部数据源、工具和系统的方式。
在 MCP 出现之前,将 AI 代理与数据库、API 或云服务等工具集成,通常需要为每个 AI 模型构建自定义连接器(例如分别为 Claude、Gemini 或 GPT 编写代码),导致集成碎片化激增。
MCP 通过定义单一、一致的协议来解决这一问题:开发者将某个工具或数据源实现为一个 MCP 服务器,任何符合 MCP 的 AI 客户端(如 Claude Desktop、Gemini CLI 或自定义代理)都能无缝发现并使用它。
其核心优势是互操作性与减少重复工作。为 BigQuery 编写一次 MCP 服务器,即可在所有受支持的 AI 模型间通用,无需额外适配器。这加速了具备代理能力的 AI 系统开发,让代理不仅能回答问题,还能主动推理、查询数据,并在现实世界中执行操作。
客户端从已连接的服务器发现可用工具,LLM 决定调用哪些工具,结果再回流用于进一步推理——这一切都通过 MCP 基于 JSON-RPC 的协议实现标准化。
这种“通用翻译器”的设计正是 Google(及其他厂商)迅速采纳 MCP 的原因:其托管服务器可直接接入该生态,让任何 MCP 客户端都能即时访问 Google Cloud 服务。
什么是 Google MCP 服务器?
Google MCP 服务器是 Google 对 Model Context Protocol(MCP)的全托管远程实现。自 2025 年 12 月发布以来,这些企业级服务器将包括 BigQuery、Google Maps、GCE 与 GKE 在内的强大 Google Cloud 服务,以标准化、可发现的工具形式对外暴露,任何符合 MCP 的 AI 客户端都可立即使用。
与需要自我托管、维护、扩缩容与自定义安全加固的社区或开源 MCP 服务器不同,Google 的托管服务器运行在 Google 的基础设施上。它们提供:
该技术释放了 具备代理能力的工作流。AI 不再只是解释 SQL 查询如何工作,而是能实际在 BigQuery 中执行查询、分析结果并给出下一步业务建议。
尽管这些代理可以自主行动,Google 的实现支持“人参与在环”的配置,确保在进行关键基础设施变更前,由人工进行审阅与批准。
如果您对 AI 驱动的浏览器自动化感兴趣,推荐查看我们的Chrome DevTools MCP 教程。
Google 的 MCP 服务器产品组合
Google 提供不断增长的全托管 MCP 服务器集合,让关键云服务可立即作为 AI 代理的工具使用。服务器按功能分类,使代理无需自定义代码即可处理从数据分析到基础设施管理的各类任务。
该生态将服务器分为两大类:
数据智能服务器
BigQuery 与 Maps MCP 服务器为在工作流中纳入数据提供了令人兴奋的机会。
BigQuery
BigQuery MCP 服务器允许代理:
这使代理能够自主进行复杂数据分析、生成报告或进行趋势预测。
Google Maps
Google Maps MCP 服务器由 Grounding Lite 与 Places API 提供支持,并支持:
使用场景:实时商业智能与物流优化。代理可以在 BigQuery 中查询销售数据,与 Maps 的地理洞察交叉参考,并给出配送路径优化建议——全部在单次推理循环中完成。
基础设施运维服务器
在基础设施方面,您可以使用 Kubernetes Engine(GKE)与 Compute Engine(GCE)MCP 服务器。
Google Kubernetes Engine
GKE MCP 服务器开放如下操作:
Google Compute Engine
GCE MCP 服务器支持:
使用场景:面向 DevOps 团队的自动化故障排查与“ChatOps”。代理可通过 GKE 工具检测 Pod 崩溃,结合来自 GCE 的 VM 指标进行关联,并发起修复步骤——将平均恢复时间从数小时缩短至数分钟。
Google 仍在持续扩展此产品组合(截至 2026 年初,Cloud Storage 与 AlloyDB 处于预览阶段),让更多 Google Cloud 服务原生可被代理访问。
Google MCP 服务器核心架构
MCP 的强大之处在于其灵活而标准化的通信层,无论您是在本地做原型,还是在规模化运行生产级代理,都能实现无缝连接。Google 的托管 MCP 服务器在企业部署中主要使用可流式传输的远程 HTTP,而本地开发则利用
stdio。通过 stdio 的本地通信
stdio(标准输入/输出)传输是运行 MCP 服务器的最简方式。在此模式下,MCP 客户端(如 Claude Desktop 或自定义代理)将服务器作为同机子进程启动,通过管道直接通信,无需网络。优点:
缺点:
该模式非常适合试验自定义 MCP 服务器,或在改为远程之前测试连接。
通过可流式 HTTP 的远程通信
对于生产与企业场景,Google 的托管服务器(以及自托管的自定义服务器)使用基于单一持久端点的可流式 HTTP。这取代了早期的 Server-Sent Events(SSE)方式,带来更健壮的设计,支持:
Google 的托管端点遵循一致模式,例如:
所有流量均使用 Google ID 令牌(OAuth2)进行保护,确保调用通过 IAM 进行身份验证与授权。
序列流程可能如下:
客户端通过 POST 向
/mcp发送工具发现/请求。服务器校验身份并路由至后端服务。
后端执行(例如在 BigQuery 中运行 SQL)。
响应以分块形式(JSON-RPC 格式)回传,以高效处理大输出。
开始使用 Google MCP 服务器
与自托管方案相比,Google 的 MCP 服务器所需设置极少,是其一大优势。接下来我们在步骤中会清晰区分托管与自定义服务器。
为托管服务器设置 Google Cloud 环境
按照以下步骤(基于官方教程)启用并准备托管 MCP 服务器。
前提条件
启用计费的 Google Cloud 项目
Google Cloud 控制台访问权限与 Cloud Shell(或本地
gcloudCLI)您的用户账号已通过
gcloud auth login完成身份验证项目设置与 API 启用
请注意,Maps MCP 需要其独立的 API 密钥用于计费与配额。使用以下命令创建:
复制显示的
keyString——稍后配置客户端时会用到。启用托管 MCP 服务器(测试版)
MCP 服务需要显式进行测试版启用:
IAM 配置
为您的账号授予 MCP 工具用户角色:
添加基于最小权限的特定服务角色,例如:
BigQuery:
roles/bigquery.jobUser与roles/bigquery.dataViewerCompute/GKE:
roles/compute.viewer或roles/container.viewer托管服务器现已就绪!端点如下:
将自定义远程 MCP 服务器部署到 Cloud Run
对于超出 Google 托管组合之外的自定义工具,可使用如 FastMCP(Python)等库自建 MCP 服务器,并部署到 Cloud Run,以实现可扩展与团队共享。我们不深入细节,仅给出流程的高层概览。
高层步骤:
创建一个 Python 项目,并添加 FastMCP 作为依赖(可用
uv等工具)。实现服务器代码(如
server.py),定义自定义工具,并使用transport="streamable-http"。编写精简 Dockerfile(基于
python:slim),安装依赖并在$PORT上运行服务器。启用所需 API(Cloud Run、Artifact Registry、Cloud Build)。
直接从源代码部署,或构建/推送容器。
加固服务:要求 IAM 身份验证(
--no-allow-unauthenticated),为授权主体授予roles/run.invoker,并在客户端连接时使用身份令牌。对于简单服务器,此流程耗时不到 10 分钟,并提供具备自动扩缩容的生产级托管能力。
Google MCP 服务器的客户端配置与集成
部署(或启用)MCP 服务器后,将其连接到 AI 客户端,才能真正释放威力。本节介绍如何配置常见客户端以使用 Google 托管 MCP 服务器,以及如何编写程序化代理。
使用 MCP Inspector 进行测试
MCP Inspector 提供了一个简洁的基于 Web 的 UI,可用于探索任何 MCP 服务器,包括 Google 托管的服务器。它在排查身份验证问题、发现精确的工具名称/参数,以及查看真实响应方面尤其有用。
流程如下:
在终端中运行以下命令启动 Inspector:
这会启动一个本地 Web 服务器,并在默认浏览器中打开 Inspector 界面。
接下来我们连接到一个 Google MCP 服务器。以 Google Maps 为例。
在 Inspector UI 左侧,我们将配置 MCP Inspector 连接到 Google Maps MCP 服务器。请按以下说明输入具体内容与数值:
Transport Type:选择 Streamable HTTP
URL:输入 https://mapstools.googleapis.com/mcp
Connection Type:选择 via Proxy(这将使用您已登录的 gcloud 凭据安全处理 Google 身份验证)。
Custom Headers:添加一个请求头
Key:
X-Goog-Api-KeyValue:您的 Maps API 密钥(即之前创建的
keyString)。点击 Connect。
若一切顺利,您会看到 MCP Inspector 成功连接至服务器。在右侧面板中,点击List Tools,即可获取 Google Maps MCP 服务器所支持的工具。
让我们来探索并测试这些工具:
对于 BigQuery 与 Compute 服务器,流程完全相同且更为简便,因为不需要 API 密钥请求头。身份验证将自动通过代理完成。
配置 Gemini CLI
Gemini CLI 是 Google 官方的开源终端代理,原生深度集成 MCP 服务器。它是构建具备代理能力工作流的最顺畅起点。
安装 Gemini CLI
使用以下命令安装 Gemini CLI:
添加服务器并测试连接
我们再次以 Maps 为例。添加 Google Maps MCP 服务器时,使用以下命令,并将
YOUR_MAPS_API_KEY替换为先前创建的 Maps API 密钥。在新的 Gemini 会话中,使用
/mcp list命令验证连接。在第一次交互中,我们提出一个简单的自然语言问题:
“纽约有哪些实惠的早餐店?”
Gemini 会自动选择 Maps 工具。在您同意执行后,它会调用这些工具并返回格式化结果。
成功了!我们获得了如下响应:
这是 Gemini CLI 的经典“Hello World”时刻:添加服务器后清晰的工具列表,随后以自然语言查询触发真实的 Maps 工具调用。
将 Gemini CLI 与 Google Maps MCP 服务器搭配使用
为测试更高级的推理能力并结合 Maps 数据,我们给出如下提示词:
"从孟买自驾去果阿,规划一条中途有风景可午餐的路线,并推荐一家当地不错的餐厅。"
当您发送该提示后,AI 代理(Gemini 或 Claude)将仅使用 Google Maps MCP 工具,执行复杂的多步推理循环:
计算完整路线:代理调用
compute_routes,起点为“孟买”,终点为“果阿”。返回距离约 566 公里,持续时间约 11 小时 41 分(考虑路况)。推理中点位置:代理计算出中途(约 280–300 公里)位于孔坎地区,具体在奇普伦(Chiplun)附近,以河景、山谷与风光著称。
搜索具风景的餐厅:使用
search_places针对奇普伦/拉特纳吉里区域进行关键词偏置,筛选高评分、户外/景观优先、可供午餐的选项。选择并描述最佳选项:最终挑选亮眼地点(如 The Riverview Restaurant,位于奇普伦),并突出其户外座位与放松氛围。
该响应为实时生成。路线时长直接来自您在调试输出中看到的
compute_routes调用,餐厅推荐则基于真实的 Places API 数据:无硬编码事实,无幻觉,仅是安全、最新的工具使用。以下是 Gemini CLI 调用工具并输出推荐的方式:
以编程方式与 LangChain 或 LangGraph 集成
相比 Gemini CLI 或 Claude Desktop 这类交互式客户端,当您以代码构建定制的、可用于生产的 AI 代理时,Google 托管 MCP 服务器的真正威力才会尽显。开源的LangChain 生态通过
langchain-mcp-adapters包,使任意远程 MCP 服务器转化为标准的 LangChain 工具,从而简化这一过程。此方法让您对工具发现、身份验证与调用拥有完全可见性:非常适合调试、构建自定义工具路由器,或集成到既有的异步工作流中。
使用 LangChain 连接到 BigQuery MCP 服务器
为便于理解,我们通过示例展示。以下完整且可运行的脚本演示如何:
使用应用默认凭据(ADC)对 Google Cloud 进行身份验证
通过可流式 HTTP 连接到托管的 BigQuery MCP 端点
发现所有可用工具
调用特定工具(
list_dataset_ids)并打印真实结果当在正确配置的 GCP 项目中执行该脚本时,将产生类似以下输出:
这表明:
该低层模式在以下场景中极具价值:
在采用此方式验证连通性后,您即可放心扩展到更高层的框架,例如 LangGraph 代理(如前述示例所示),或将这些工具接入任何兼容 LangChain 的系统。
有了这一基础,Google MCP 服务器将成为您 Python AI 技术栈的安全、可用于生产的扩展,无需任何自定义粘合代码。
Google MCP 服务器的安全最佳实践
在 Google 的托管 MCP 服务器中,安全并非事后考虑,而是自底向上构建的。依托于 Google 的基础设施,并与 Google Cloud 的身份与访问管理深度集成,这些服务器提供远胜于自托管或实验性方案的企业级防护。
身份与访问管理
Google Cloud 使用强大的 IAM(身份与访问管理)框架来管理谁(或什么)可以调用您的 MCP 工具。
在基于角色的访问控制(RBAC)下,每个 AI 代理都应拥有独立的服务账号。该控制依赖两个不同的授权层:
网关角色:要使用任何 Google MCP 工具,身份必须具备
roles/mcp.toolUser角色。服务特定权限:由于
mcp.toolUser只允许连接,您仍需为具体操作授予特定权限。例如,若 AI 需要查询数据,则需roles/bigquery.jobUser。相反,如果它只需查看 VM 状态,应授予roles/compute.viewer而非roles/compute.admin。Model Armor
Model Armor 是一项旨在提升 AI 应用安全性与可靠性的 Google Cloud 服务。它通过主动筛查 LLM 的提示与响应,防范各类风险,确保负责任的 AI 实践。
无论您在 Google Cloud 还是其他云提供商上部署 AI,Model Armor 都能帮助您防止恶意输入、验证内容安全、保护敏感数据、保持合规,并在各 AI 应用间一致地执行安全与治理策略。
Model Armor 的作用类似专门针对 AI 的 Web 应用防火墙(WAF):
可观测性与合规
通过 Google MCP 服务器发起的每次工具调用都会被记录。
结语
不必再为每个模型或工具编写脆弱的自定义连接器:Google 的托管 MCP 服务器标志着在 Google Cloud 上构建具备代理能力的 AI 进入新阶段。通过采用开放的 MCP 标准,并为 BigQuery、Google Maps、Compute Engine 与 GKE 提供全托管、企业级实现,Google 消除了构建可靠、可执行代理的最大障碍。
正如本指南所展示的,这一标准化架构消除了“粘合代码”的噩梦,使您无需为每个客户端重写工具,便可从本地原型扩展到 Cloud Run 部署。此外,借助 Google Cloud IAM 与 Model Armor,您的代理可原生抵御现代 AI 威胁。
从“聊天机器人”到“代理”的跃迁正在发生。掌握 Google MCP 服务器,您构建的将不再只是能回答问题的 AI,而是一位能以思想速度操作您云环境的数字队友。
准备将本指南所学转化为职业级能力?立即报名我们的Associate AI Engineer for Developers 职业路径。