本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
浏览批准的记录
迁移现已开放
AWS 代理注册表已在新agent-registry命名空间下启动。对公共预览bedrock-agentcore命名空间的支持将于 2026 年 9 月 17 日停止。有关迁移说明,请参阅综合注册表迁移指南。
作为消费者,您可以使用两个数据平面 API 浏览注册表中批准的记录目录—— ListDiscoverableRegistryRecords 用于分页列表,以及BatchGetDiscoverableRegistryRecord用于按记录 ID 批量检索完整记录内容。这两个 API 都仅在agent-registry命名空间下可用,并且仅返回最新修订状态为 “已批准” 的记录。处于 “草稿” 、“待批准” 、“已拒绝” 或 “已弃用” 状态的记录不会返回。要使用自然语言查询搜索记录,请改用SearchDiscoverableRegistryRecords。请参阅搜索注册表记录。
注意
ListDiscoverableRegistryRecordsBatchGetDiscoverableRegistryRecord并且仅在agent-registry命名空间下可用。在bedrock-agentcore命名空间下创建的注册表不会公开这些 API;使用SearchDiscoverableRegistryRecords。
列出批准的记录
用于ListDiscoverableRegistryRecords返回注册表中每条已批准记录的分页摘要。摘要不包括记录的描述符,BatchGetDiscoverableRegistryRecord用于在确定所需记录后获取完整的描述符内容。
请求参数
-
注册表ID(必填,路径):要列出的注册表的 ARN 或 ID。
-
maxR esults(可选):每页的最大结果数。有效范围为 1—100。
-
nextToken(可选):来自先前响应的分页令牌。在第一页省略。
-
过滤器(可选):表单中的筛选器条目列表
{"name": "<field>", "values": ["<value>"]}。支持的过滤器名称:-
recordType— 记录的语义类型。有效值:AGENT、MCP、SKILL、CUSTOM。 -
descriptorType— 记录使用的主描述符密钥。有效值:a2aAgentCard、mcpServer、agentSkillsDefinition、custom。重复的过滤器名称被拒绝。如果为单个过滤器指定多个值,则这些值将由 O R 连接。如果指定多个过滤器,则过滤器将由 AND 连接。
-
响应中的每个摘要都包含:registryArnrecordArn、、recordId、name、displayName、description、recordType、recordVersion、、status、createdAt、updatedAt。
响应排序和分页
结果按记录名称的字母顺序排序。
ListDiscoverableRegistryRecords不能保证页面密集。即使存在更多匹配maxResults记录,任何单个响应都可能包含少于记录或零条记录。继续使用每个后续请求的返回值nextToken调用 API,直到响应不包含nextToken(或nextToken不包含null)以检索所有匹配记录。
控制台
例
注意
记录目录页面需要对所选注册表进行 IAM-based 入站授权。对于 JWT-authorized 注册表,ListDiscoverableRegistryRecords直接使用 HTTP 客户端和有效的 JWT 持有者令牌进行调用。
AWS CLI
aws agent-registry list-discoverable-registry-records \ --registry-id "<registryARN>" \ --filters '[{"name": "recordType", "values": ["MCP"]}]' \ --max-results 50 \ --region us-east-1
要分页浏览结果,请传递先前响应中的nextToken值:
aws agent-registry list-discoverable-registry-records \ --registry-id "<registryARN>" \ --next-token "<tokenFromPreviousResponse>" \ --region us-east-1
AWS SDK
import boto3 client = boto3.client('agent-registry') paginator = client.get_paginator('list_discoverable_registry_records') for page in paginator.paginate( registryId='<registryARN>', filters=[{'name': 'recordType', 'values': ['MCP']}] ): for record in page['registryRecords']: print(f"{record['displayName']} ({record['name']}) - {record['recordType']} v{record['recordVersion']}")
HTTP 客户端
curl -X POST "https://agent-registry.<region>.api.aws/registries/<registryARN>/discoverable-records-list" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <accessToken>" \ -d '{ "filters": [{"name": "recordType", "values": ["MCP"]}], "maxResults": 50 }'
批量检索批准的记录
BatchGetDiscoverableRegistryRecord用于在单次调用中检索最多 100 个记录 ID 的完整描述符内容。常见用例:浏览ListDiscoverableRegistryRecords并确定所需记录后,在一次调用中获取其描述符,而不是对每条记录进行一次SearchDiscoverableRegistryRecords调用。
请求参数
-
条目(必填):注册表范围的记录组列表。启动时,只接受一个条目(每个请求只有一个注册表);这可以向前兼容,以备将来的跨注册表批处理。
每个条目包含:
-
注册表ID(必填):注册机构的 ARN 或 ID。
-
RecordID(必填):要从注册表检索的 1—100 条记录 ARN 或 ID 的列表。
-
响应
-
RegistryRecords:成功检索到的记录的完整记录对象(带描述符)。
-
错误:每条记录的错误列表。成功返回每条请求的记录时为空。
即使出现部分故障,该调用也会返回 HTTP 200 — 无法检索的记录会出现在errors列表中,而不是导致整个调用失败。每个错误条目都registryId与recordId请求相呼应,外加一个errorCode:
-
RESOURCE_NOT_FOUND — 记录不存在、已删除或其最新版本未获批准。 Non-approved 记录被折叠到此代码中,因此不会向缺乏可见性的呼叫者透露它们的存在。
-
ACCESS_DENIED — 呼叫者无权读取此特定记录。
-
INTERNAL_ERROR -暂时性检索失败。使用指数回退可以安全地重试失败的子集。
Batch-level 失败(注册表不存在、调用者无法访问注册表、不可恢复的服务错误)是通过标准操作错误返回的,而不是每errors条记录的列表。
AWS CLI
aws agent-registry batch-get-discoverable-registry-record \ --entries '[{"registryId": "<registryARN>", "recordIds": ["<recordId1>", "<recordId2>", "<recordId3>"]}]' \ --region us-east-1
AWS SDK
import boto3 client = boto3.client('agent-registry') response = client.batch_get_discoverable_registry_record( entries=[ { 'registryId': '<registryARN>', 'recordIds': ['<recordId1>', '<recordId2>', '<recordId3>'] } ] ) for record in response['registryRecords']: print(f"Retrieved: {record['displayName']} ({record['recordId']})") for error in response['errors']: print(f"Failed: {error['recordId']} ({error['errorCode']}): {error.get('message', '')}")
HTTP 客户端
curl -X POST "https://agent-registry.<region>.api.aws/discoverable-records-batch" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <accessToken>" \ -d '{ "entries": [ { "registryId": "<registryARN>", "recordIds": ["<recordId1>", "<recordId2>", "<recordId3>"] } ] }'