管理 MCP 服务器和工具

借助 Agent Registry,您可以发现和管理 模型上下文协议 (MCP) 服务器及其公开的特定 工具

当您在项目中启用受支持的 Google Cloud API 时,官方 Google 和 Google Cloud 远程 MCP 服务器会自动注册 并提取到 Agent Registry 中。您还可以手动注册其他外部 MCP 服务器。 如需了解详情,请参阅注册 MCP 服务器

本文档介绍了如何发现已注册的 MCP 服务器和工具,以及如何修改工具定义。

准备工作

如需管理 MCP 服务器和工具, 请先在 Agent Registry 中注册 MCP 服务器。 您还需要您的项目 ID 才能执行这些任务。

如需使用本文档中的 gcloud CLI 命令,请确保您已 设置 Google Cloud CLI 环境

所需角色

如需获得在 Agent Registry 中管理 MCP 服务器和工具所需的权限,请让管理员授予您项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。

发现可用的 MCP 服务器和工具

注册 MCP 服务器后,您可以发现这些服务器,以便将其绑定到您的智能体。

列出所有可用的 MCP 服务器

您可以列出环境中注册的所有 MCP 服务器,并查看其详细配置,例如端点和关联的元数据:

控制台

  1. 在 Google Cloud 控制台中,前往 Agent Registry

    前往 Agent Registry

  2. 在项目选择器中,选择您 设置 Agent Registry的 Google Cloud 项目。

  3. 选择 MCP 服务器 标签页。

    该页面会显示所有已注册 MCP 服务器的列表及其详细信息, 例如名称、标识符、 说明、运行时和位置。

  4. 如需查看服务器的完整详细信息,请点击服务器的 名称。

gcloud

如需列出特定位置的所有 MCP 服务器,请使用 mcp-servers list 命令:

gcloud agent-registry mcp-servers list \
  --project=PROJECT_ID \
  --location=REGION

替换以下内容:

  • PROJECT_ID:项目 ID。
  • REGION:注册表区域。

过滤已注册的 MCP 服务器

如果您有多个服务器,或者想要确认特定服务器的注册,可以按服务器的元数据过滤列表:

控制台

  1. 在 Google Cloud 控制台中,前往 Agent Registry

    前往 Agent Registry

  2. 在项目选择器中,选择您 设置 Agent Registry的 Google Cloud 项目。

  3. 选择 MCP 服务器 标签页。

    该页面会显示所有已注册 MCP 服务器的列表及其详细信息, 例如名称、标识符、 说明、运行时和位置。

  4. 如需按位置过滤,请点击位置 菜单,选择要过滤的位置,然后点击应用

    该页面会显示已注册 MCP 服务器的过滤列表,其中包含您选择的条件。

gcloud

使用 --filter 标志过滤列表,以仅返回与特定元数据匹配的资源:

gcloud agent-registry mcp-servers list \
  --project=PROJECT_ID \
  --location=REGION \
  --filter="FILTER_EXPRESSION"

FILTER_EXPRESSION 替换为您要过滤的 MCP 服务器的过滤表达式。例如,您可以使用以下过滤条件:

  • 如需按显示名称过滤,请使用 displayName='DISPLAY_NAME'
  • 如需按全局唯一 标识符 (URN) 进行搜索,请使用 mcpServerId='urn:mcp:SERVER_URN'

Terraform

如需通过针对元数据进行过滤来检索特定的已注册 MCP 服务器,请使用 filter 实参配置 google_agent_registry_mcp_server 数据源:

data "google_agent_registry_mcp_server" "filtered_mcp_server" {
  location = "REGION"
  filter   = "displayName=\"DISPLAY_NAME\""
}

替换以下内容:

  • REGION:注册表区域。
  • DISPLAY_NAME:要过滤的 MCP 服务器的人类可读名称,例如 Custom MCP Server

查看 MCP 服务器中的详细信息

查看特定 MCP 服务器中的详细信息,例如其工具:

控制台

  1. 在 Google Cloud 控制台中,前往 Agent Registry

    前往 Agent Registry

  2. 在项目选择器中,选择您 设置 Agent Registry的 Google Cloud 项目。

  3. 选择 MCP 服务器 标签页。

    该页面会显示所有已注册 MCP 服务器的列表及其详细信息, 例如名称、标识符、 说明、运行时和位置。

  4. 点击要查看的 MCP 服务器的名称。

    详细信息页面包含 MCP 服务器详细信息的标签页。

  5. 点击相应的标签页以查看特定的 MCP 服务器详细信息:

    • 概览:MCP 服务器的核心详细信息,包括服务器的 名称、标识符、 位置和说明。概览还会显示一个代码段 ,让您可以使用 智能体开发套件 (ADK)构建智能体。
    • 可观测性:深入了解 MCP 服务器的运行状况和使用情况。它会显示以应用为中心的指标,例如延迟时间、流量、错误和令牌支出。此标签页与 Google Cloud Observability 集成,可显示实时性能指标和系统级利用率,帮助您管理费用、调试问题和跟踪用户体验。 如需了解详情,请参阅可观测性概览
    • 工具:服务器提供的功能目录。此标签页列出了 MCP 服务器公开的特定函数,智能体可以调用这些函数来执行特定操作。对于每个工具,界面都会显示其架构,包括名称、说明和关键行为注释,这些注释指导编排智能体应如何与该工具交互。点击工具的名称可显示一个代码段 ,让您可以使用 ADK构建智能体。

gcloud

如需查看特定 MCP 服务器的详细元数据,请使用 mcp-servers describe 命令:

gcloud agent-registry mcp-servers describe SERVER_NAME \
  --project=PROJECT_ID \
  --location=REGION

SERVER_NAME 替换为 MCP 服务器的名称,例如 custom-mcp-server

Terraform

如需使用特定已注册 MCP 服务器的 ID 检索其详细信息,请配置 google_agent_registry_mcp_server 数据源:

data "google_agent_registry_mcp_server" "my_mcp_server" {
  location      = "REGION"
  mcp_server_id = "SERVER_NAME"
}

output "server_create_time" {
  description = "The timestamp when the MCP server was registered."
  value       = data.google_agent_registry_mcp_server.my_mcp_server.create_time
}

output "server_update_time" {
  description = "The timestamp when the MCP server was last updated."
  value       = data.google_agent_registry_mcp_server.my_mcp_server.update_time
}

替换以下内容:

  • REGION:注册表区域。
  • SERVER_NAME:MCP 服务器的唯一标识符,例如 custom-mcp-server

更新服务器详细信息和工具定义

如果 MCP 服务器添加了新工具或更改了现有架构,您必须更新注册表以反映这些更改。由于注册表不会自动内省 MCP 服务器,因此您必须手动上传更新后的工具规范。您上传的内容会替换此服务器的现有工具定义。

对于 Agent Registry API,McpServer 资源用于发现。因此,您必须直接更新已注册的 Service 资源。

控制台

在 Google Cloud 控制台中更新可用的服务器详细信息:

  1. 在 Google Cloud 控制台中,前往 Agent Registry

    前往 Agent Registry

  2. 在项目选择器中,选择您 设置 Agent Registry的 Google Cloud 项目。

  3. 选择 MCP 服务器 标签页。

    该页面会显示所有已注册 MCP 服务器的列表及其详细信息, 例如名称、标识符、 说明、运行时和位置。

  4. 点击要更新的服务器的名称。

  5. 在服务器的概览 标签页上,点击 Edit

  6. 修改服务 面板中,输入服务器的更新信息,例如新名称或说明。

  7. 点击保存

gcloud

准备新的工具规范。 然后,使用最新的工具定义更新 JSON 文件:

gcloud agent-registry services update SERVER_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --mcp-server-spec-content=TOOL_SPEC

替换以下内容:

  • SERVER_NAME:MCP 服务器的名称,例如 custom-mcp-server
  • PROJECT_ID:项目 ID。
  • REGION:注册表区域。
  • TOOL_SPEC:新工具规范的名称,例如 new-toolspec.json。规范文件的文件大小上限为 10 KB。

Terraform

Terraform 仅支持 MCP 服务器的 NO_SPEC 类型。您无法内嵌配置工具规范。如需更新您的 MCP 服务器的工具定义,请使用 Google Cloud 控制台、gcloud CLI 或 Agent Registry API。

移除 MCP 服务器

如需删除自动注册到 Agent Registry 的 MCP 服务器, 您必须删除底层 MCP 服务器或在项目中停用 Google Cloud MCP 服务器的 API。然后,系统会自动从注册表中移除该服务器。

如需从注册表中移除手动注册的 MCP 服务器,您必须删除底层 Service 资源。此操作会从搜索结果中移除 MCP 服务器,并使其无法被其他工具发现:

控制台

  1. 在 Google Cloud 控制台中,前往 Agent Registry

    前往 Agent Registry

  2. 在项目选择器中,选择您 设置 Agent Registry的 Google Cloud 项目。

  3. 选择 MCP 服务器 标签页。

    该页面会显示所有已注册 MCP 服务器的列表及其详细信息, 例如名称、标识符、 说明、运行时和位置。

  4. 点击要移除的服务器的名称。

  5. 在服务器的概览 标签页上,点击 Delete

  6. 在确认对话框中,输入 DELETE 以确认操作。

  7. 点击删除

gcloud

gcloud agent-registry services delete SERVER_NAME \
  --project=PROJECT_ID \
  --location=REGION

替换以下内容:

  • SERVER_NAME:要移除的 MCP 服务器的名称,例如 my-mcp-server
  • PROJECT_ID:项目 ID。
  • REGION:注册表区域。

Terraform

从 Terraform 配置中移除代表 MCP 服务器的 google_agent_registry_service 资源,然后运行 terraform apply

管控工具访问权限

为 MCP 服务器和工具实现企业级治理和安全性。使用 Agent Registry 作为集中式目录,并使用 Agent Gateway 来主动执行政策。

借助 Agent Gateway,您可以安全地管控智能体与 工具之间的交互,无论这些智能体是在 Google Cloud 上运行还是 外部开发者工具。

如需详细了解如何管控工具访问权限,请参阅以下内容:

  • IAM 政策概览: 定义谁可以在什么条件下访问特定工具。
  • Agent Gateway 概览: 了解网关如何在所有 智能体与工具 (MCP) 交互中强制执行安全性和可观测性。
  • 查看安全问题调查结果: 使用 Gemini Enterprise Agent Platform 监控和查看智能体生态系统的安全洞察。