Usando o endpoint MCP do Registry
Próxima migração de namespace
AWS O Agent Registry está atualmente em versão prévia pública no namespace bedrock-agentcore. A partir de 6 de agosto de 2026, o serviço passa para o namespace agent-registry. Se você usa o AWS Agent Registry, deve atualizar seus endpoints, políticas do IAM, clientes SDK, scripts de CLI e dados de registro. Para obter mais informações sobre a migração da versão prévia pública, consulte o guia abrangente de migração do registro.
Visão geral do
Cada registro expõe um MCP-compatible endpoint seguindo a especificação 2025-11-25
https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp
O MCP contém uma ferramenta chamada “search_registry_records”.
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"}}
Você pode se conectar ao registro a partir de um cliente MCP existente, como Kiro, Claude etc.
Conecte-se ao endpoint MCP de OAuth-based registro a partir de um cliente MCP existente
Permissões
O endpoint MCP usará o mesmo CustomJWTAuthorizerConfigurationpara autorizar as solicitações recebidas.
O .well-known/oauth-protected-resource caminho é:https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcp.
O cliente também pode descobrir os metadados do WWW-Authenticate cabeçalho:
www-authenticate: Bearer resource_metadata="https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcp"
Depois de obter o token de acesso, você pode validá-lo:
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"}}}'
Dependendo do servidor de autorização e dos requisitos de segurança da organização, você pode escolher uma das seguintes abordagens para configurar seu cliente MCP:
-
Token do portador: use um processo separado para buscar o token do portador e configurá-lo no cabeçalho do cliente MCP
-
Pre-registered cliente: crie um cliente em seu servidor de autorização e coloque o cliente na lista de permissões na configuração do registro.
-
Registro dinâmico de clientes: se o seu servidor de autorização suportar o registro dinâmico de clientes (DCR), você poderá colocar o público na lista de permissões na configuração do registro.
OAuth-based Configuração do cliente MCP
Use o token do portador
Na maioria dos IDEs, você pode configurar o token portador do cabeçalho de autorização em uma configuração mcp. Por exemplo, o Kiro suporta${ENV_VAR} sintaxe. Você pode usar o seguinte exemplo:
{ "mcpServers": { "my-registry": { "type": "http", "url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp", "headers": { "Authorization": "Bearer ${ACCESS_TOKEN}" } } } }
Pre-registered Cliente
Você pode criar um novo cliente com base na concessão do código de autorização em seu servidor de autorização e usar o cliente para acessar o registro. Por exemplo, crie um cliente no grupo de usuários do Cognito.
Depois de ter o ID do cliente, certifique-se de colocá-lo na lista de permissões no registro:
aws bedrock-agentcore-control update-registry \ --registry-id <registryId> \ --authorizer-configuration '{ "optionalValue": { "customJWTAuthorizer": { "discoveryUrl": "https://<example-domain>/.well-known/openid-configuration", "allowedClients": ["<client-id>"] } } }'
Em seguida, você pode configurar seu cliente MCP se ele suportar a especificação de ClientID. Um exemplo no código Claude:
{ "mcpServers": { "pre-registered-registry": { "type": "http", "url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp", "oauth": { "clientId": "<client-id>", "callbackPort": "<port-number>" } } } }
nota
Alguns servidores de autorização, como Auth0 e Cognito, não permitem que você configure uma variedade de portas como URIs de redirecionamento permitidos, então você precisa definir explicitamente uma na URL permitida do cliente pré-registrado, bem como no mcp.json redirect/callback .
Registro dinâmico de clientes
A maioria dos aplicativos cliente MCP oferece suporte ao registro dinâmico de clientes. Nesse caso, você NÃO deve especificar o allowedClients valor no registro. Em vez disso, você pode escolher definirallowedAudience. O valor pode ser o mesmo do seu registro MCP. Você deve configurar seu servidor de autorização para emitir ao JWT um aud campo com o mesmo valor de emallowedAudience.
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"] } } }'
Em seguida, você pode configurar seu cliente MCP simplesmente usando um URL:
{ "mcpServers": { "dcr-registry": { "type": "http", "url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp" } } }
Erros comuns ao configurar o registro dinâmico de clientes:
-
Você deve garantir que o servidor de autorização ofereça suporte ao registro dinâmico de clientes.
-
O servidor de autorização deve emitir o
audcampo JWT com, o que é permitido no seu registro. CustomJWTAuthorizerConfiguration -
Atualmente, o registro não retorna o desafio de escopo no cabeçalho www-authenticate. Alguns clientes MCP oferecem suporte à definição explícita
oauthScopesna configuração, como o Kiro.
Conecte-se ao endpoint MCP de IAM-based registro a partir de um cliente MCP existente
Permissões
Para inicialização do MCP e listagem de ferramentas:
{ "Effect": "Allow", "Action": "bedrock-agentcore:InvokeRegistryMcp", "Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*" }
Para pesquisar por meio da invocação da ferramenta MCP, você também precisa:
{ "Effect": "Allow", "Action": [ "bedrock-agentcore:InvokeRegistryMcp", "bedrock-agentcore:SearchRegistryRecords" ], "Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*" }
Você pode verificar a permissão com o comando:
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 Configuração do cliente MCP
Você pode usar mcp-proxy-for-aws
{ "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" ] } } }
Desenvolva seu próprio cliente MCP
Para obter mais referências de código sobre como invocar o endpoint MCP do Registry, inclusive de IDEs populares como Kiro ou Claude Code, consulte exemplos de referências de código no repositório público de código.