Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso del punto final MCP del Registro
La migración ya está abierta
AWS El registro de agentes se ha lanzado en el nuevo espacio de agent-registry nombres. La compatibilidad con el espacio de bedrock-agentcore nombres de versión preliminar pública dejará de funcionar el 17 de septiembre de 2026. Para obtener instrucciones sobre la migración, consulta la Guía Guía completa de migración de registros completa de migración del registro.
Descripción general de
Cada registro expone un MCP-compatible punto final que sigue la especificación del 25 de noviembre de 2020 en el sitio web del Model Context Protocol. El punto final admite la lista de herramientas y la invocación de herramientas para buscar registros de registro.
ejemplo
- AWS Agent Registry namespace
-
https://agent-registry.<region>.api.aws/registry/<registryId>/mcp
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp
En el espacio de agent-registry nombres, el punto final del MCP expone las tres API del plano de datos de detección como herramientas del MCP:
-
search_discoverable_registry_records— Búsqueda en lenguaje natural de los registros aprobados.
-
list_discoverable_registry_records— Lista paginada de registros aprobados.
-
batch_get_discoverable_registry_record— Recuperación masiva del contenido completo del registro por ID de registro.
En el espacio de bedrock-agentcore nombres, solo se expone la search_registry_records herramienta. En las tablas siguientes se muestran las definiciones de las herramientas:
ejemplo
- AWS Agent Registry namespace
-
Tool name: search_discoverable_registry_records
Description:
Searches for approved registry records using natural language queries. Returns metadata for matching records.
Parameters:
- searchQuery (required): string - Natural language search query
- maxResults: integer - Maximum number of results to return (1-20, default 10)
- filter: object - Optional metadata filter using structured JSON operators. Supports field-level operators ($eq, $ne,
$in) and logical operators ($and, $or) on filterable fields (name, recordType, recordVersion). Example:
{"recordType": {"$eq": "MCP"}}
---
Tool name: list_discoverable_registry_records
Description:
Returns paginated summaries of approved records in the registry. Summaries include record metadata but not descriptor
content. Use batch_get_discoverable_registry_record to fetch full descriptors after identifying the records you need.
Parameters:
- maxResults: integer - Maximum number of results per page (1-100, default 20)
- nextToken: string - Pagination token from a previous response. Omit for the first page.
- filters: array - Optional list of filter entries in the form {"name": "<field>", "values": ["<value>"]}. Supported
filter names: recordType (valid values: AGENT, MCP, SKILL, CUSTOM) and descriptorType (valid values: a2aAgentCard,
mcpServer, agentSkillsDefinition, custom). Duplicate filter names are rejected. If you specify multiple values for
a single filter, the values are joined by OR. If you specify multiple filters, the filters are joined by AND.
---
Tool name: batch_get_discoverable_registry_record
Description:
Retrieves the full descriptor content for up to 100 approved records in a single call. Common use case: after
identifying records with list_discoverable_registry_records or search_discoverable_registry_records, fetch their full
descriptors in one call rather than making one call per record.
Parameters:
- recordIds (required): array - List of 1-100 record ARNs or IDs to retrieve from the registry.
The response returns HTTP 200 even on partial failure. Records that could not be retrieved appear in an errors list
with an errorCode (RESOURCE_NOT_FOUND, ACCESS_DENIED, or INTERNAL_ERROR) rather than causing the whole call to fail.
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
Tool name: search_registry_records
Description:
Searches for registry records using natural language queries. Returns metadata for matching records.
Parameters:
- searchQuery (required): string - Natural language search query
- maxResults: integer - Maximum number of results to return (1-20, default 10)
- filter: object - Optional metadata filter using structured JSON operators. Supports field-level operators ($eq, $ne,
$in) and logical operators ($and, $or) on filterable fields (name, descriptorType, version). Example:
{"descriptorType": {"$eq": "MCP"}}
Puede conectarse al registro desde un cliente MCP existente, como Kiro, Claude, etc.
Conéctese al punto final de MCP OAuth-based del registro desde un cliente de MCP existente
Permisos
El punto final del MCP utilizará lo mismo CustomJWTAuthorizerConfiguration para autorizar las solicitudes entrantes.
La .well-known/oauth-protected-resource ruta es: https://agent-registry.<region>.api.aws/.well-known/oauth-protected-resource/registry/<registryId>/mcp (https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcppara los registros que aún se encuentran en el espacio de bedrock-agentcore nombres).
El cliente también puede descubrir los metadatos desde el WWW-Authenticate encabezado:
ejemplo
- AWS Agent Registry namespace
-
www-authenticate: Bearer resource_metadata="https://agent-registry.<region>.api.aws/.well-known/oauth-protected-resource/registry/<registryId>/mcp"
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
www-authenticate: Bearer resource_metadata="https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcp"
Una vez que hayas obtenido el token de acceso, puedes validarlo:
ejemplo
- AWS Agent Registry namespace
-
curl -s -X POST "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_discoverable_registry_records","arguments":{"searchQuery":"weather"}}}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
curl -s -X POST "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_registry_records","arguments":{"searchQuery":"weather"}}}'
En función de su servidor de autorización y de los requisitos de seguridad de la organización, puede elegir uno de los siguientes enfoques para configurar su cliente MCP:
-
Token portador: utilice un proceso independiente para obtener el token portador y configurarlo en el encabezado del cliente MCP
-
Pre-registered cliente: cree un cliente en su servidor de autorización y permita incluir al cliente en la configuración del registro.
-
Registro dinámico de clientes: si su servidor de autorización admite el registro dinámico de clientes (DCR), puede incluir a la audiencia en la configuración del registro.
OAuth-based Configuración del cliente MCP
Utilice el token de portador
En la mayoría de los IDE, puedes configurar el token portador del encabezado de autorización en una configuración mcp. Por ejemplo, el IDE de Kiro admite variables de entorno mediante la sintaxis. ${ENV_VAR} Para obtener más información, consulte Proteger las conexiones MCP en el sitio web de Kiro. Puede usar el siguiente ejemplo:
ejemplo
- AWS Agent Registry namespace
-
{
"mcpServers": {
"my-registry": {
"type": "http",
"url": "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp",
"headers": {
"Authorization": "Bearer ${ACCESS_TOKEN}"
}
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"my-registry": {
"type": "http",
"url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
"headers": {
"Authorization": "Bearer ${ACCESS_TOKEN}"
}
}
}
}
Cliente Pre-registered
Puede crear un nuevo cliente basándose en la concesión del código de autorización en su servidor de autorización y utilizar el cliente para acceder al registro. Por ejemplo, cree un cliente en el grupo de usuarios de Cognito.
Una vez que tenga el ID de cliente, asegúrese de incluirlo en la lista de permitidos en el registro:
ejemplo
- AWS Agent Registry namespace
-
aws agent-registry-control update-registry \
--registry-id <registryId> \
--discovery-configuration '{
"authorizerConfiguration": {
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedClients": ["<client-id>"]
}
}
}
}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control update-registry \
--registry-id <registryId> \
--authorizer-configuration '{
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedClients": ["<client-id>"]
}
}
}'
A continuación, puede configurar su cliente MCP si admite la especificación de un ID de cliente. Un ejemplo en el código de Claude:
ejemplo
- AWS Agent Registry namespace
-
{
"mcpServers": {
"pre-registered-registry": {
"type": "http",
"url": "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp",
"oauth": {
"clientId": "<client-id>",
"callbackPort": "<port-number>"
}
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"pre-registered-registry": {
"type": "http",
"url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
"oauth": {
"clientId": "<client-id>",
"callbackPort": "<port-number>"
}
}
}
}
Algunos servidores de autorización, como Auth0 y Cognito, no permiten configurar un rango de puertos como URI de redireccionamiento permitidos, por lo que debes establecer uno de forma explícita en la redirect/callback URL permitida del cliente prerregistrado, así como en el mcp.json.
Registro dinámico de clientes
La mayoría de las aplicaciones cliente de MCP admiten el registro dinámico de clientes. En este caso, NO debe especificar el allowedClients valor en el registro. En su lugar, puede elegir configurarallowedAudience. El valor puede ser el mismo que el de su registro MCP. Debes configurar tu servidor de autorización para que emita a JWT un aud campo con el mismo valor que en. allowedAudience
ejemplo
- AWS Agent Registry namespace
-
aws agent-registry-control update-registry \
--registry-id <registryId> \
--discovery-configuration '{
"authorizerConfiguration": {
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedAudience": ["https://agent-registry.<region>.api.aws/registry/<registryId>/mcp"]
}
}
}
}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control update-registry \
--registry-id <registryId> \
--authorizer-configuration '{
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedAudience": ["https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp"]
}
}
}'
Luego puede configurar su cliente MCP simplemente usando una URL:
ejemplo
- AWS Agent Registry namespace
-
{
"mcpServers": {
"dcr-registry": {
"type": "http",
"url": "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp"
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"dcr-registry": {
"type": "http",
"url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp"
}
}
}
Errores comunes al configurar el registro dinámico de clientes:
-
Debe asegurarse de que el servidor de autorización admita el registro dinámico de clientes.
-
El servidor de autorización debe enviar un aud campo a JWT, que está permitido en tu registro. CustomJWTAuthorizerConfiguration
-
Actualmente, el registro no muestra el desafío de alcance en el encabezado www-authenticate. Algunos clientes MCP admiten la definición explícita oauthScopes en la configuración, como Kiro. https://kiro.dev/docs/cli/custom-agents/configuration-reference/#oauth-configuration
Conéctese al punto final de MCP IAM-based del registro desde un cliente MCP existente
Permisos
Para la inicialización de MCP y la lista de herramientas:
ejemplo
- AWS Agent Registry namespace
-
{
"Effect": "Allow",
"Action": "agent-registry:InvokeRegistryMcp",
"Resource": "arn:aws:agent-registry:*:<account>:registry/*"
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"Effect": "Allow",
"Action": "bedrock-agentcore:InvokeRegistryMcp",
"Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*"
}
Para buscar mediante la invocación de la herramienta MCP, también necesita:
ejemplo
- AWS Agent Registry namespace
-
{
"Effect": "Allow",
"Action":
[
"agent-registry:InvokeRegistryMcp",
"agent-registry:SearchDiscoverableRegistryRecords"
],
"Resource": "arn:aws:agent-registry:*:<account>:registry/*"
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"Effect": "Allow",
"Action":
[
"bedrock-agentcore:InvokeRegistryMcp",
"bedrock-agentcore:SearchRegistryRecords"
],
"Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*"
}
Puede verificar el permiso con el comando:
ejemplo
- AWS Agent Registry namespace
-
curl -s -X POST "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp" \
-H "Content-Type: application/json" \
-H "X-Amz-Security-Token: ${AWS_SESSION_TOKEN}" \
--aws-sigv4 "aws:amz:<region>:agent-registry" \
--user "${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY}" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_discoverable_registry_records","arguments":{"searchQuery":"weather"}}}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
curl -s -X POST "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp" \
-H "Content-Type: application/json" \
-H "X-Amz-Security-Token: ${AWS_SESSION_TOKEN}" \
--aws-sigv4 "aws:amz:<region>:bedrock-agentcore" \
--user "${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY}" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_registry_records","arguments":{"searchQuery":"weather"}}}'
IAM-based Configuración del cliente MCP
Puede usar mcp-proxy-for-aws en el sitio web para conectarse a un registro. GitHub IAM-based Por ejemplo, en Kiro mcp.json:
ejemplo
- AWS Agent Registry namespace
-
{
"mcpServers": {
"iam-based-registry": {
"disabled": false,
"type": "stdio",
"command": "uvx",
"args": [
"mcp-proxy-for-aws@latest",
"https://agent-registry.<region>.api.aws/registry/<registryId>/mcp",
"--service",
"agent-registry",
"--region",
"<region>",
"--profile",
"my-profile"
]
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"iam-based-registry": {
"disabled": false,
"type": "stdio",
"command": "uvx",
"args": [
"mcp-proxy-for-aws@latest",
"https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
"--service",
"bedrock-agentcore",
"--region",
"<region>",
"--profile",
"my-profile"
]
}
}
}
Desarrolle su propio cliente MCP
Para obtener más referencias de código sobre cómo invocar el punto final del MCP del Registro, incluso desde IDE populares como Kiro o Claude Code, consulte las referencias de código de ejemplo del repositorio de código público.