本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
开始使用 Amazon 代理注册表
迁移现已开放
Amazon 代理注册表已在新agent-registry命名空间下启动。2026 年 10 月 30 日将停止对公共预览版bedrock-agentcore命名空间的支持。有关迁移说明,请参阅注册表迁移综合指南。
在本指南中,您将创建第一个注册表、添加记录、批准并进行搜索。
先决条件
完成先决条件中的步骤。
步骤 1:创建注册表
使用 IAM 授权和手动批准创建注册表。
控制台
通过 IAM-based 授权创建注册表
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择注册表。
-
在 “注册表” 部分,选择 “创建注册表”。
-
在注册表详细信息部分的名称中,输入注册表的名称。名称必须以字母数字字符开头。有效字符为 a—z、A—Z、0—9、
_(下划线)、(连字符)、-(句点)和.(正斜杠)。/该名称最多可包含 64 个字符。 -
(可选)选择 “其他详细信息” 展开该部分,然后在 “描述” 中输入描述以帮助识别此注册表。
-
在发现授权部分,对于身份验证类型,选择使用 IAM 授权(入站授权)。
-
在 “记录审批” 部分,打开或关闭 Auto-approval:
-
启用Auto-approval后,当您提交记录以供批准时,该记录将直接变为 “已批准” 状态,并在不久之后在搜索结果中可见。
-
关闭后 Auto-approval,当您提交记录以供批准时,该记录将变为待批准状态,并要求策展人在发布之前对其进行审核和批准。
-
-
(可选)在 “标签” 部分中,选择 “添加新标记”,将一个或多个标签附加到注册表。每个标签都有一个密钥和一个可选值。
-
选择 “创建注册表”。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表。
-
在 “注册表” 部分,选择 “创建注册表”。
-
在注册表详细信息部分的名称中,输入注册表的名称。名称必须以字母数字字符开头。有效字符为 a—z、A—Z、0—9、
_(下划线)、(连字符)、-(句点)和.(正斜杠)。/该名称最多可包含 64 个字符。 -
(可选)选择 “其他详细信息” 展开该部分,然后在 “描述” 中输入描述以帮助识别此注册表。
-
在搜索 API 授权部分,对于身份验证类型,选择使用 IAM 授权(入站授权)。
-
在 “记录审批” 部分,打开或关闭 Auto-approval:
-
启用Auto-approval后,当您提交记录以供批准时,该记录将直接变为 “已批准” 状态,并在不久之后在搜索结果中可见。
-
关闭后 Auto-approval,当您提交记录以供批准时,该记录将变为待批准状态,并要求策展人在发布之前对其进行审核和批准。
-
-
选择 “创建注册表”。
-
通过 JWT-based 授权创建注册表
身份提供商授权使用 JSON Web 令牌 (JWT) 来控制对注册表可发现的数据平面 API 和 MCP 端点的访问。您可以使用 Amazon Cognito 快速设置授权,也可以使用自己的身份提供商来启用 OAuth 2.0。
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择注册表。
-
在 “注册表” 部分,选择 “创建注册表”。
-
在注册表详细信息部分的名称中,输入注册表的名称。名称必须以字母数字字符开头。有效字符为 a—z、A—Z、0—9、
_(下划线)、(连字符)、-(句点)和.(正斜杠)。/该名称最多可包含 64 个字符。 -
(可选)选择 “其他详细信息” 展开该部分,然后在 “描述” 中输入描述以帮助识别此注册表。
-
在发现授权部分中,对于身份验证类型,选择使用 JSON Web 令牌 (JWT)(入站授权)。
-
对于 JWT 架构配置,请选择以下选项之一:
-
使用 Cognito 快速创建配置(推荐)— Amazon 代理注册表使用 Amazon Cognito 作为身份提供者代表您创建授权配置。无需其他配置。
-
使用现有的身份提供商配置-自带身份提供商启用 OAuth 2.0。如果选择此选项,请完成以下步骤:
-
对于发现 URL,请输入您的身份提供商提供的发现 URL。 Amazon Agent Registry 使用此 URL 自动获取您的提供商的登录、令牌和验证设置。您可以在身份提供商的控制面板或文档(例如
https://cognito-identity.amazonaws.com/.well-known/openid-configuration)中找到此 URL。注意
创建注册表后,无法更改发现 URL。
-
(可选)在 JWT 授权配置下,选择允许的受众以提供允许的受众列表, Amazon 代理注册局会根据该声明在 JWT 令牌中对
aud声明进行验证。OAuth 2.0 中的受众声明 (aud) 指定令牌用于哪个资源服务器 (API)。这样可以确保令牌在处理请求之前是正确的接收者,从而防止令牌在不同的 API 上重复使用。 -
(可选)选择 “允许的客户端” 以提供允许的客户端标识符列表, Amazon 代理注册表会根据 JWT 令牌中的
client_id声明验证这些标识符。Aclient_id是请求访问令牌以访问注册表可发现的数据平面 API 或 MCP 端点的应用程序的公共唯一标识符。如果启用此选项,请在 “客户端” 字段中输入一个或多个客户端 ID,然后选择 “添加客户端” 以添加其他客户端。 -
(可选)选择 “允许的范围” 以提供允许的权限列表,定义为范围。如果已配置,则传入令牌中至少有一个范围值必须与其中一个配置的值相匹配。作用域充当权限来限制应用程序可以执行的操作。
-
(可选)选择 “自定义声明” 以提供一组规则,将传入令牌中的特定声明与预定义值进行匹配。为每条规则指定声明名称、值类型(STRIN G 或 STRING_ARRAY)和所需的匹配值。
-
-
-
在 “记录审批” 部分,打开或关闭 Auto-approval:
-
启用Auto-approval后,当您提交记录以供批准时,该记录将直接变为 “已批准” 状态,并立即显示在搜索结果中。
-
关闭后,当您提交记录以供批准时,该记录将变Auto-approval为 “待批准” 状态,并要求注册表管理员在发布之前对其进行审核和批准。
-
-
(可选)在 “标签” 部分中,选择 “添加新标记”,将一个或多个标签附加到注册表。每个标签都有一个密钥和一个可选值。
-
选择 “创建注册表”。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表。
-
在 “注册表” 部分,选择 “创建注册表”。
-
在注册表详细信息部分的名称中,输入注册表的名称。名称必须以字母数字字符开头。有效字符为 a—z、A—Z、0—9、
_(下划线)、(连字符)、-(句点)和.(正斜杠)。/该名称最多可包含 64 个字符。 -
(可选)选择 “其他详细信息” 展开该部分,然后在 “描述” 中输入描述以帮助识别此注册表。
-
在搜索 API 授权部分,对于身份验证类型,选择使用 JSON Web 令牌 (JWT)(入站授权)。
-
对于 JWT 架构配置,请选择以下选项之一:
-
使用 Cognito 快速创建配置(推荐)— Amazon 代理注册表使用 Amazon Cognito 作为身份提供者代表您创建授权配置。无需其他配置。
-
使用现有的身份提供商配置-自带身份提供商启用 OAuth 2.0。如果选择此选项,请完成以下步骤:
-
对于发现 URL,请输入您的身份提供商提供的发现 URL。 Amazon Agent Registry 使用此 URL 自动获取您的提供商的登录、令牌和验证设置。您可以在身份提供商的控制面板或文档(例如
https://cognito-identity.amazonaws.com/.well-known/openid-configuration)中找到此 URL。注意
创建注册表后,无法更改发现 URL。
-
(可选)在 JWT 授权配置下,选择允许的受众以提供允许的受众列表, Amazon 代理注册局会根据该声明在 JWT 令牌中对
aud声明进行验证。OAuth 2.0 中的受众声明 (aud) 指定令牌用于哪个资源服务器 (API)。这样可以确保令牌在处理请求之前是正确的接收者,从而防止令牌在不同的 API 上重复使用。 -
(可选)选择 “允许的客户端” 以提供允许的客户端标识符列表, Amazon 代理注册表会根据 JWT 令牌中的
client_id声明验证这些标识符。Aclient_id是请求访问令牌以访问注册表搜索 API 的应用程序的公共、唯一标识符。如果启用此选项,请在 “客户端” 字段中输入一个或多个客户端 ID,然后选择 “添加客户端” 以添加其他客户端。 -
(可选)选择 “允许的范围” 以提供允许的权限列表,定义为范围。如果已配置,则传入令牌中至少有一个范围值必须与其中一个配置的值相匹配。作用域充当权限来限制应用程序可以执行的操作。
-
(可选)选择 “自定义声明” 以提供一组规则,将传入令牌中的特定声明与预定义值进行匹配。为每条规则指定声明名称、值类型(STRIN G 或 STRING_ARRAY)和所需的匹配值。
-
-
-
在 “记录审批” 部分,打开或关闭 Auto-approval:
-
启用Auto-approval后,当您提交记录以供批准时,该记录将直接变为 “已批准” 状态,并立即显示在搜索结果中。
-
关闭后,当您提交记录以供批准时,该记录将变Auto-approval为 “待批准” 状态,并要求注册表管理员在发布之前对其进行审核和批准。
-
-
选择 “创建注册表”。
-
注意
* 至少需要一个 JWT 授权配置字段:允许的受众、允许的客户、允许的范围或自定义声明。如果您配置了多个配置,则 Amazon 代理注册表会对所有配置进行验证。* 创建注册表后,无法更改发现 URL。* 注册表创建后,无法更改授权类型(IAM 或 JWT)。* 注册表一次仅支持一种形式的入站授权类型:IAM Sigv4 或 JWT 不记名令牌。不能同时使用两者。仅支持通过 IAM-based 注册表通过 IAM 进行搜索;只有基于 Oauth 的注册表才支持通过 Oauth 进行搜索。
创建注册表后,控制台将导航到注册表详细信息页面。注册表初始状态为 “正在创建”。 Amazon Agent Registry 会为注册表分配 ARN,您可以在注册表详情部分找到该 ARN。置备完成后,注册表状态更改为 “就绪”。当注册表的状态为 “就绪” 时,您可以向其添加记录。
Amazon CLI
例
- Amazon Agent Registry namespace
-
aws agent-registry-control create-registry \ --name "MyFirstRegistry" \ --description "My first Agent Registry" \ --region us-east-1 - Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control create-registry \ --name "MyFirstRegistry" \ --description "My first Agent Registry" \ --region us-east-1
注册表状态开始为 “正在创建”,置备完成后会转换为 “就绪”。
Amazon SDK
例
- Amazon Agent Registry namespace
-
import boto3 client = boto3.client('agent-registry-control') response = client.create_registry( name='my-agent-registry', description='My first Agent Registry' ) print(response['registryArn']) - Amazon Bedrock AgentCore namespace (to be deprecated)
-
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.create_registry( name='my-agent-registry', description='My first Agent Registry' ) print(response['registryArn'])
步骤 2:添加注册表记录
在注册表中创建 MCP 服务器的记录。
控制台
注册记录代表代理、工具、技能或自定义资源。
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择 Re gistry,然后选择要在其中添加记录的注册表的名称。
-
在 “注册记录” 部分,选择 “创建记录”。
-
选择来源类型:
-
从端点同步-提供端点 URL 和可选凭据,以从 MCP 服务器或代理 (A2A) 端点获取元数据。有关详细信息,请参阅同步来自外部来源的记录。
-
手动-手动配置记录详细信息和协议配置。继续执行以下步骤。
-
-
在记录详细信息部分的名称中,输入记录的唯一名称。该名称在注册表中必须是唯一的 —
Name和的组合Record version必须是唯一的。名称必须以字母数字字符开头。有效字符为 a—z、A—Z、0—9、_(下划线)、(连字符)、-(句点)和.(正斜杠)。/该名称最多可包含 255 个字符。 -
(可选)在 “显示名称” 中,为记录输入人类可读的标签。这与记录的技术名称一起出现在注册记录表和搜索结果中。
-
(可选)在描述中,输入记录的描述。描述可以是 1 到 4,096 个字符。
-
在记录版本中,输入记录的版本标识符(例如,
1.0.0或v2.1)。 -
在 “记录类型和描述符” 部分中:
-
在 “类型” 下,选择记录的语义类型。类型决定哪些主描述符键有效。
-
MCP — 专为 AI 工具和代理通信而设计的协议。处理上下文管理和结构化消息格式。
-
代理 — 专为安全代理与代理交互而设计的协议。支持分布式工作流程和信息交换。
-
技能 — 使用 markdown 文档和可选的结构化定义注册代理技能。
-
自定义-针对特殊通信模式的自定义协议实现。定义您自己的接口规格和集成要求。
-
-
在 “描述符” 下,选择记录描述符数据的形状。可用选项取决于您选择的类型:
-
MCP → MCP 服务器或自定义
-
代理 → A2A 代理卡、MCP 服务器或自定义
-
技能 → 特工技能定义或自定义
-
自定义 → 自定义
-
-
-
将根据您选择的描述符显示特定于描述符的编辑器:
-
MCP 服务器 — 从 “架构版本” 下拉列表中选择架构版本(例如
2025-12-11),然后在 “您的 MCP 服务器定义编辑器” 中输入模型上下文协议网站中的模型上下文协议注册表server.json。该定义必须符合所选版本的官方 MCP 服务器架构。要查看官方架构作为参考,请打开 “显示官方架构”。(可选)选择添加工具定义以添加此服务器上可用的工具及其输入参数、输出和使用示例。选择架构版本(例如 2025-11-25),然后在您的工具定义编辑器中输入您的工具定义。 -
A2A Agent Card — 架构版本为。
0.3在编辑器中输入您的代理卡定义。要查看官方架构作为参考,请打开 “显示官方架构”。 -
特工技能定义 — 对于技能文档,请输入描述该技能的降价。(可选)选择 “包括技能定义” 以添加结构化定义。选择架构版本并以 JSON 对象的形式输入定义。
-
自定义-将您的自定义定义输入为 JSON 对象。
-
-
(可选)在 “标签” 部分中,选择 “添加新标签” 以将一个或多个标签附加到记录。每个标签都有一个密钥和一个可选值。
-
选择创建记录。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择 Re gistry,然后选择要在其中添加记录的注册表的名称。
-
在 “注册记录” 部分,选择 “创建记录”。
-
选择来源类型:
-
从端点同步-提供端点 URL 和可选凭据,以从 MCP 服务器或代理 (A2A) 端点获取元数据。有关详细信息,请参阅同步来自外部来源的记录。
-
手动-手动配置记录详细信息和协议配置。继续执行以下步骤。
-
-
在记录详细信息部分的名称中,输入记录的名称。名称必须以字母数字字符开头。有效字符为 a—z、A—Z、0—9、
_(下划线)、(连字符)、-(句点)和.(正斜杠)。/该名称最多可包含 255 个字符。 -
(可选)在描述中,输入记录的描述。描述可以是 1 到 4,096 个字符。
-
在记录版本中,输入记录的版本标识符(例如,
1.0.0或v2.1)。 -
在记录类型部分,选择与您的资源相匹配的类型:
-
MCP — 专为 AI 工具和代理通信而设计的协议。处理上下文管理和结构化消息格式。如果您选择此类型,请完成以下步骤:
-
在 MCP 服务器定义部分,从架构版本下拉列表中选择架构版本(例如
2025-12-11),然后在您的 MCP 服务器定义编辑器中输入模型上下文协议网站中的模型上下文协议注册表server.json。该定义必须符合所选版本的官方 MCP 服务器架构。要查看官方架构作为参考,请打开 “显示官方架构”。 -
(可选)选择添加工具定义以添加此服务器上可用的特定工具及其输入参数、输出和使用示例,以增强可发现性。如果选择此选项,请从架构版本下拉列表中选择架构版本(例如
2025-11-25),然后在您的工具定义编辑器中输入您的工具定义。要查看官方工具架构作为参考,请打开 “显示官方架构”。
-
-
代理 — 专为安全代理与代理交互而设计的协议。支持分布式工作流程和信息交换。如果选择此类型,则架构版本为
0.3。在编辑器中输入您的代理卡定义。要查看官方架构作为参考,请打开 “显示官方架构”。 -
代理技能 — 使用 markdown 文档和可选的结构化定义注册代理技能。如果您选择此类型,请完成以下步骤:
-
对于技能文档,请输入描述该技能的 markdown 文档。
-
(可选)选择 “包括技能定义” 以添加结构化定义。如果选择此选项,请从 “架构版本” 下拉列表中选择架构版本,然后在编辑器中以 JSON 对象的形式输入技能定义。
-
-
自定义-针对特殊通信模式的自定义协议实现。定义您自己的接口规格和集成要求。如果您选择此类型,请在编辑器中以 JSON 对象的形式输入您的自定义定义。
-
-
选择创建记录。
-
注意
要向注册表中添加不符合标准 MCP 或 A2A 协议架构的服务器或代理,请使用自定义记录类型。
选择 “创建记录” 后, Amazon 代理注册表将开始配置记录。记录状态最初为 “正在创建”。置备完成后,状态将更改为 “草稿”。要将记录提供给其他人查找,请将其提交以供批准。有关更多信息,请参阅步骤 3:提交记录以供审批。
Amazon CLI
例
- Amazon Agent Registry namespace
-
aws agent-registry-control create-registry-record \ --registry-id <registryId> \ --name "weather-server" \ --display-name "WeatherServer" \ --record-type MCP \ --descriptors '{"mcpServer": {"data": "{\"name\": \"weather/mcp-server\", \"description\": \"Weather data service\", \"version\": \"1.0.0\"}", "dataSchemaVersion": "2025-12-11"}}' \ --record-version "1.0" \ --region us-east-1 - Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control create-registry-record \ --registry-id <registryId> \ --name "WeatherServer" \ --descriptor-type MCP \ --descriptors '{"mcp": {"server": {"inlineContent": "{\"name\": \"weather/mcp-server\", \"description\": \"Weather data service\", \"version\": \"1.0.0\"}"}}}' \ --record-version "1.0" \ --region us-east-1
该记录以 “创建” 状态创建,并在处理完成后转换为 “草稿”。有关创建其他类型记录的更多 Amazon CLI 示例,请参阅创建和管理记录部分。
Amazon SDK
例
- Amazon Agent Registry namespace
-
import boto3 import json client = boto3.client('agent-registry-control') server_content = json.dumps({ "name": "io.example/weather-server", "description": "A weather MCP server", "version": "1.0.0" }) tools_content = json.dumps({ "tools": [{ "name": "get_weather", "description": "Get the current weather for a location", "inputSchema": { "type": "object", "properties": { "location": { "type": "string", "description": "City name" } }, "required": ["location"] } }] }) response = client.create_registry_record( registryId='<registryId>', name='my-mcp-server', displayName='My MCP Server', recordType='MCP', descriptors={ 'mcpServer': { 'data': server_content, 'dataSchemaVersion': '2025-12-11', 'additionalData': { 'tools': { 'data': tools_content, 'dataSchemaVersion': '2024-11-05' } } } }, recordVersion='1.0' ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # CREATING - Amazon Bedrock AgentCore namespace (to be deprecated)
-
import boto3 import json client = boto3.client('bedrock-agentcore-control') server_content = json.dumps({ "name": "io.example/weather-server", "description": "A weather MCP server", "version": "1.0.0" }) tools_content = json.dumps({ "tools": [{ "name": "get_weather", "description": "Get the current weather for a location", "inputSchema": { "type": "object", "properties": { "location": { "type": "string", "description": "City name" } }, "required": ["location"] } }] }) response = client.create_registry_record( registryId='<registryId>', name='my-mcp-server', descriptorType='MCP', descriptors={ 'mcp': { 'server': { 'schemaVersion': '2025-12-11', 'inlineContent': server_content }, 'tools': { 'protocolVersion': '2024-11-05', 'inlineContent': tools_content } } }, recordVersion='1.0' ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # CREATING
第 3 步:提交记录以供审批
控制台
提交记录以供批准将启动审查流程,使该记录可供查阅。您可以从注册表或记录详细信息页面提交记录。
从注册表中提交记录以供审批
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要提交的记录。
-
选择 “更新状态”,然后选择 “提交以供审批”。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要提交的记录。
-
选择 “更新状态”,然后选择 “提交以供审批”。
-
从记录详细信息页面提交记录以供审批
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要提交的记录的名称。
-
选择 “更新状态”,然后选择 “提交以供审批”。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要提交的记录的名称。
-
选择 “更新状态”,然后选择 “提交以供审批”。
-
提交记录以供批准后,记录状态会根据注册机构的批准设置而变化:
-
如果注册表已Auto-approval开启,则记录状态将直接更改为 “已批准”,并在不久之后在搜索结果中可见。
-
如果注册表已关Auto-approval闭,则记录状态将更改为 “待批准”,并要求注册表管理员在发布之前对其进行审核和批准。
Amazon CLI
例
- Amazon Agent Registry namespace
-
aws agent-registry-control submit-registry-record-for-approval \ --registry-id <registryId> \ --record-id <recordId> \ --region us-east-1 - Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control submit-registry-record-for-approval \ --registry-id <registryId> \ --record-id <recordId> \ --region us-east-1
记录将移至 PENDING_Approval(如果启用了自动批准,则直接移至 “已批准”)。
Amazon SDK
例
- Amazon Agent Registry namespace
-
import boto3 client = boto3.client('agent-registry-control') response = client.submit_registry_record_for_approval( registryId='<registryId>', recordId='<recordId>' ) print(f"Record ARN: {response['recordArn']}") print(f"Record ID: {response['recordId']}") print(f"Status: {response['status']}") # PENDING_APPROVAL or APPROVED print(f"Updated At: {response['updatedAt']}") - Amazon Bedrock AgentCore namespace (to be deprecated)
-
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.submit_registry_record_for_approval( registryId='<registryId>', recordId='<recordId>' ) print(f"Record ARN: {response['recordArn']}") print(f"Record ID: {response['recordId']}") print(f"Status: {response['status']}") # PENDING_APPROVAL or APPROVED print(f"Updated At: {response['updatedAt']}")
步骤 4:批准记录
控制台
批准注册表记录表中的记录
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要批准的记录。
-
选择更新状态,然后选择批准。
-
在确认对话框中,输入状态更改的原因。
-
选择确认。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要批准的记录。
-
选择更新状态,然后选择批准。
-
在确认对话框中,输入状态更改的原因。
-
选择确认。
-
从记录详细信息页面批准记录
例
- Amazon Agent Registry namespace
-
-
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要批准的记录的名称。
-
在记录详细信息页面中,选择更新状态,然后选择批准。
-
在确认对话框中,输入状态更改的原因。
-
选择确认。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表,然后选择注册表名称。
-
在 “注册记录” 部分,选择要批准的记录的名称。
-
在记录详细信息页面中,选择更新状态,然后选择批准。
-
在确认对话框中,输入状态更改的原因。
-
选择确认。
-
Amazon CLI
例
- Amazon Agent Registry namespace
-
aws agent-registry-control update-registry-record-status \ --registry-id <registryId> \ --record-id <recordId> \ --status APPROVED \ --status-reason "Reviewed and approved" \ --region us-east-1 - Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control update-registry-record-status \ --registry-id <registryId> \ --record-id <recordId> \ --status APPROVED \ --status-reason "Reviewed and approved" \ --region us-east-1
Amazon SDK
例
- Amazon Agent Registry namespace
-
import boto3 client = boto3.client('agent-registry-control') response = client.update_registry_record_status( registryId='<registryId>', recordId='<recordId>', status='APPROVED', statusReason='Meets all requirements' ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # APPROVED print(f"Reason: {response['statusReason']}") - Amazon Bedrock AgentCore namespace (to be deprecated)
-
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.update_registry_record_status( registryId='<registryId>', recordId='<recordId>', status='APPROVED', statusReason='Meets all requirements' ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # APPROVED print(f"Reason: {response['statusReason']}")
第 5 步:发现已批准的记录
记录目录是用于浏览和搜索注册表中已批准记录的控制台页面。当您在记录目录页面上选择注册表时,控制台会自动列出其已批准的记录。从那里你可以翻阅列表,或者使用搜索框来运行自然语言查询。通过编程方式ListDiscoverableRegistryRecords,使用一次调用SearchDiscoverableRegistryRecords即可浏览、搜索和BatchGetDiscoverableRegistryRecord获取多条记录的完整详细信息。
控制台
注意
Console-based discovery 仅适用于使用 IAM 作为授权类型的注册机构。如果您的注册表使用 JSON Web 令牌 (JWT),请使用 HTTP 客户端(例如 curl 或 Postman)直接调用可发现的数据平面 API,并在请求标头中包含有效的 JWT 不记名令牌。 Amazon CLI 和 Amazon 软件开发工具包使用 IAM Sigv4 签名,不能与注册表一起使用。 JWT-authorized 有关更多详细信息,请参阅搜索注册表记录。
例
- Amazon Agent Registry namespace
-
浏览或搜索已批准的记录
-
在导航窗格中,选择录制目录。
-
在 “注册表” 下,选择要浏览其已批准记录的注册表。该页面会自动列出该注册表中所有已批准的记录。
-
(可选)在页面右上角的 “卡片” 和 “表格” 视图之间切换。
-
(可选)在搜索已批准的记录中,输入自然语言查询或名称以缩小结果范围,然后选择搜索。
-
选择一张卡片或一行以打开记录的完整详细信息。
记录目录仅显示处于 “已批准” 状态的记录。不显示处于 “草稿”、“待批准”、“已拒绝” 或 “已弃用” 状态的记录。
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
搜索注册表记录
-
在Bedrock-AgentCore 控制台
中打开 “ Amazon 代理注册表” 页面。 -
在导航窗格中,选择注册表,然后选择注册表名称。
-
选择 “搜索记录” 选项卡。
-
在 “搜索已批准的记录” 字段中,输入您的搜索查询。
-
(可选)要按特定属性筛选结果,请选择搜索字段以展开 “属性” 菜单,然后选择筛选器:名称、描述符类型或版本。
-
选择搜索。
搜索仅返回处于 “已批准” 状态的记录。处于草稿、待批准、已拒绝或已弃用状态等其他状态的记录不会出现在搜索结果中。
-
Amazon CLI
浏览已批准的记录-在注册表中列出已批准的记录:
aws agent-registry list-discoverable-registry-records \ --registry-id "<registry-id>" \ --region us-east-1
搜索已批准的记录 — 运行混合语义+关键字搜索:
例
- Amazon Agent Registry namespace
-
aws agent-registry search-discoverable-registry-records \ --search-query "weather" \ --registry-ids "<registry-id>" \ --region us-east-1 - Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore search-registry-records \ --search-query "weather" \ --registry-ids "<registry-id>" \ --region us-east-1
一次检索多条记录的完整详细信息:
aws agent-registry batch-get-discoverable-registry-record \ --entries '[{"registryId": "<registry-id>", "recordIds": ["<recordId-1>", "<recordId-2>"]}]' \ --region us-east-1
注意
ListDiscoverableRegistryRecordsBatchGetDiscoverableRegistryRecord且仅在agent-registry命名空间中可用。它们在bedrock-agentcore命名空间中不可用。
Amazon SDK
浏览已批准的记录:
import boto3 client = boto3.client('agent-registry') list_response = client.list_discoverable_registry_records( registryId='<registry-id>', maxResults=20 ) for record in list_response['registryRecords']: print(f"{record['displayName']} ({record['name']}) - {record['recordType']}")
搜索已批准的记录:
例
- Amazon Agent Registry namespace
-
import boto3 client = boto3.client('agent-registry') response = client.search_discoverable_registry_records( registryIds=['arn:aws:agent-registry:us-east-1:<account>:registry/<registryId>'], searchQuery='weather forecast tool', maxResults=10 ) for record in response['registryRecords']: print(f"Record: {record['displayName']} ({record['recordId']})") print(f" Name: {record['name']}") print(f" Type: {record['recordType']}") print(f" Status: {record['status']}") print(f" Version: {record['recordVersion']}") - Amazon Bedrock AgentCore namespace (to be deprecated)
-
import boto3 client = boto3.client('bedrock-agentcore') response = client.search_registry_records( registryIds=['arn:aws:bedrock-agentcore:us-east-1:<account>:registry/<registryId>'], searchQuery='weather forecast tool', maxResults=10 ) for record in response['registryRecords']: print(f"Record: {record['name']} ({record['recordId']})") print(f" Type: {record['descriptorType']}") print(f" Status: {record['status']}") print(f" Version: {record['version']}")
一次检索多条记录的完整详细信息:
batch_response = client.batch_get_discoverable_registry_record( entries=[{'registryId': '<registry-id>', 'recordIds': ['<recordId-1>', '<recordId-2>']}] ) for record in batch_response['registryRecords']: print(f"{record['displayName']} ({record['name']}) - {record['recordType']}") for err in batch_response['errors']: print(f"Error for {err['recordId']}: {err['errorCode']}")
你建造了什么
-
具有 IAM 授权和手动批准的注册表
-
描述 MCP 服务器的注册表记录
-
经批准的记录可通过记录目录浏览和搜索
后续步骤
-
在和的基础上构建目录式的发现体验
ListDiscoverableRegistryRecordsBatchGetDiscoverableRegistryRecord -
设置 Amazon EventBridge 通知以自动执行您的批准工作流程
-
为您的代理、服务器、技能和自定义资源添加更多记录