View a markdown version of this page

浏览批准的记录 - 亚马逊基岩 AgentCore

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

浏览批准的记录

迁移现已开放

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)以检索所有匹配记录。

控制台

例
AWS Agent Registry namespace
  1. 打开AWS 代理注册表控制台。

  2. 在导航窗格中,选择 “录制目录” 。

  3. 选择要浏览的注册表。该页面会自动调用ListDiscoverableRegistryRecords并在分页表中显示批准的记录。

  4. (可选)使用搜索栏旁边的属性菜单按记录类型进行筛选。

  5. 选择记录的名称以查看其完整描述符内容。

Amazon Bedrock AgentCore namespace (to be deprecated)

使用浏览批准的记录目录只能在命名ListDiscoverableRegistryRecords空间中使用。agent-registry较旧 Bedrock-AgentCore 的主机没有 “记录” 目录页面或浏览功能。要在bedrock-agentcore命名空间下创建的注册表中查找记录,请使用注册表详细信息页面上的搜索记录选项卡,请参阅搜索注册表记录。

注意

记录目录页面需要对所选注册表进行 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>"] } ] }'