AWS Agent Registry实操:用一个注册中心管好所有AI Agent

团队里Agent越来越多,谁建的、干什么的、接了哪些MCP Server,问一圈没人说得清。AWS上周放出了Agent Registry的Preview版,挂在Bedrock AgentCore下面,想解决的就是这个问题------把Agent、工具、MCP Server统一登记,要用的时候搜一下就行。

我花了半天跑通了整个流程,把踩的坑记下来。

它干什么

Agent Registry是一个私有目录。你可以往里面注册Agent、工具、Skill、MCP Server这些东西,每条记录带描述、连接信息、工具schema。团队里其他人想找某个能力,搜一下registry就行,不用翻wiki、问人、看代码。

支持两种搜索方式:关键词搜索和语义搜索。语义搜索的意思是你可以用自然语言描述需求,比如"我要一个能发邮件的工具",它能匹配到注册过的邮件发送Agent。

目前Preview版开在5个Region:us-east-1、us-west-2、ap-northeast-1(东京)、ap-southeast-2(悉尼)、eu-west-1(爱尔兰)。

创建Registry

控制台方式

进AgentCore控制台,左边导航栏选Registry,点Create registry。填个名字,选认证方式------IAM或者JWT二选一,建好之后不能改。

IAM认证适合内部团队用,JWT认证适合对外开放或者跨组织的场景。

还有一个开关:Auto-approval。开了的话,提交记录直接变成Approved状态,马上能搜到。关了的话,需要管理员审批后才可见。生产环境建议关掉,Preview阶段开着省事。

CLI方式

bash 复制代码
aws bedrock-agentcore-control create-registry \
  --name "my-agent-registry" \
  --description "团队Agent注册中心" \
  --region us-east-1

跑完返回一个registryArn,状态从CREATING变成READY大概要1-2分钟。

Python SDK

python 复制代码
import boto3

client = boto3.client('bedrock-agentcore-control', region_name='us-east-1')

response = client.create_registry(
    name='my-agent-registry',
    description='团队Agent注册中心'
)
print(f"Registry ARN: {response['registryArn']}")
print(f"Status: {response['status']}")

注册一个MCP Server

Registry建好之后,往里面添记录。以一个PDF解析MCP Server为例:

控制台操作

进Registry详情页 → Registry records → Create record。填这些:

  • Name: pdf-parser-mcp
  • Type: 选MCP Server
  • Description: 从PDF文件中提取文字和表格数据
  • Endpoint URL: 填你MCP Server的地址

如果MCP Server已经在线,可以用URL-based discovery。Registry会自动去拉工具定义和schema,省得手动填。

CLI注册

bash 复制代码
aws bedrock-agentcore-control create-registry-record \
  --registry-name "my-agent-registry" \
  --record-name "pdf-parser-mcp" \
  --record-type "MCP_SERVER" \
  --description "从PDF文件中提取文字和表格数据" \
  --metadata '{"endpoint": "https://mcp.example.com/pdf-parser"}' \
  --region us-east-1

提交之后,如果开了Auto-approval,记录直接生效。没开的话,管理员需要手动批准。

批准记录(关了Auto-approval的情况)

bash 复制代码
aws bedrock-agentcore-control approve-registry-record \
  --registry-name "my-agent-registry" \
  --record-name "pdf-parser-mcp" \
  --region us-east-1

搜索Agent和工具

注册了几条记录之后,搜索才有意思。

关键词搜索

bash 复制代码
aws bedrock-agentcore-control search-registry \
  --registry-name "my-agent-registry" \
  --query "PDF" \
  --region us-east-1

语义搜索

bash 复制代码
aws bedrock-agentcore-control search-registry \
  --registry-name "my-agent-registry" \
  --query "我需要一个能从文档里提取结构化数据的工具" \
  --search-type SEMANTIC \
  --region us-east-1

语义搜索不要求关键词精确匹配,描述需求就行。你不知道别人给工具起了什么名,但你知道自己要什么。

用MCP Client直接查

Agent Registry本身也暴露了MCP Server接口。你可以在IDE里把它当成一个MCP Server接进来,让AI Agent直接查注册中心里有什么可以用。

配置方法:在Claude Code或Cursor的MCP配置里加一个:

json 复制代码
{
  "mcpServers": {
    "agent-registry": {
      "command": "aws",
      "args": [
        "bedrock-agentcore-control",
        "start-mcp-server",
        "--registry-name", "my-agent-registry",
        "--region", "us-east-1"
      ]
    }
  }
}

这样你在编码的时候,AI助手可以自动搜注册中心,找到合适的工具并调用。

用起来之后

说几个实际跑下来觉得有价值的地方。

我们团队有个客户信息查询Agent,另一个组不知道,自己又写了一个。注册到Registry之后,第二个组在开工前搜了一下,发现已经有了,直接接入,省了两周工作量。

另一个好处是审计。每条记录的访问在CloudTrail里有日志。谁搜了什么、谁调了哪个Agent,都有迹可查。合规团队要的就是这个。

还有一点:MCP Server更新了工具定义后,在Registry里触发一次同步,它自动去拉最新schema。不用你手动改注册信息。

踩过的坑

认证方式建好之后不能改。我第一次建了IAM认证的Registry,后来想改JWT,发现改不了,只能删了重建。所以建之前先想清楚用IAM还是JWT。

目前只有5个Region可用。我的Agent跑在ap-southeast-1(新加坡),只能用最近的ap-northeast-1(东京),跨Region延迟多了几十毫秒。不影响功能,但体感上慢一拍。

语义搜索的中文效果不如英文。我试了同一个需求,英文query命中3条,中文只命中1条。如果搜中文没结果,先换英文试试。

URL-based discovery要求MCP Server公网可达。我有个MCP Server在VPC内网,Registry死活拉不到metadata。后来配了PrivateLink才通。如果你的Server也在内网,提前准备。

还有一个容易忽略的:记录name是永久的,建好不能改。想改名只能删除重建。命名建议用team-function-version的格式,比如data-pdf-parser-v1。

和其他方案对比

Google Cloud上周发布了类似的Agent Garden,Azure有Agent Catalog但还没GA。

AWS这个做法有一点不同:Registry本身暴露了MCP Server接口,Agent可以在运行时直接查注册中心。不需要人工去控制台配置"这个Agent可以调那个工具",Agent自己搜自己接。这比纯Web管理界面实用。

不过现在还是Preview。IAM权限配置比较繁琐,文档里的Python SDK示例有些参数名和实际API对不上(我碰到了两处),跑之前先看CLI的help确认参数。

小结

Agent Registry解决的问题很具体:Agent多了之后找不到、管不住。如果你的团队已经跑了5个以上的Agent或MCP Server,值得花半天试试。

注册一两条记录跑通搜索,半小时够了。真正花时间的是后面的事:制定命名规范、设计审批流程、把现有Agent一个个登记进去。工具给你了,工程实践得自己摸。

相关推荐
coder_zrx3 小时前
MCP 与 A2A:Agent 时代的协议体系
mcp·a2a
-许平安-4 小时前
MCP项目笔记十二(RAG-MCP)
c++·笔记·llm·rag·mcp
花酒锄作田11 小时前
企业微信机器人与 DeepAgents 集成实践
python·mcp·deepagents
zhangshuang-peta1 天前
MCP 与跨系统集成:当多个系统共享 Agent 能力时会发生什么?
人工智能·ai agent·mcp·peta
RxGc1 天前
2026年AI Agent开发实战:MCP协议深度解析与多智能体协作架构完全指南
人工智能·agent·mcp
neoooo1 天前
Spring AI MCP Server 开发指南
人工智能·后端·mcp
洒满阳光的午后1 天前
我做了一个“能理解业务语义”的可观测性 MCP Server:统一接入 Prometheus、OpenObserve 和 SkyWalking
人工智能·ai·prometheus·skywalking·openobserve·mcp
Ts-Drunk1 天前
Hermes-Agent 部署Telegram/Discord机器人(多平台远程控制)
远程控制·ai agent·hermes·telegram机器人·discord机器人·多平台部署
J_Xiong01172 天前
【Agent Memory篇】07:MemPalace 的 AAAK 方言、知识图谱与语义检索
知识图谱·ai agent·agent memory