Pesquisar registros de registro
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.
Parâmetros da solicitação
-
SearchQuery (obrigatório): pode ser qualquer consulta em linguagem natural de 1 a 256 caracteres
-
IDs de registro (obrigatório): em qual registro realizar a pesquisa. Suporta exatamente um ARN ou ID de registro
-
maxResults (opcional): quantos registros são retornados na resposta da pesquisa. Pode assumir qualquer valor entre 1 e 20 e o padrão é 10
-
filtros (opcional) — expressão de filtro de metadados
Filtros de metadados
Operadores:$eq,$ne,$in. Lógico:$and,$or. Campos: nome, tipo de descritor, versão.
Exemplo: {"descriptorType": {"$eq": "MCP"}}
Combinado: {"$and": [{"descriptorType": {"$eq": "MCP"}}, {"version": {"$eq": "1.0"}}]}
Console
-
Abra a página de detalhes do registro.
-
Escolha a guia Pesquisar registros.
-
Insira sua consulta de pesquisa e veja os resultados.
nota
A pesquisa do console está disponível somente para IAM-authorized registros. Para JWT-authorized registros, use a API de pesquisa diretamente com um cliente HTTP (comocurl) e um token portador JWT válido, ou use o endpoint MCP para o registro por meio de um cliente MCP.
AWS CLI (registro com autorização de entrada baseada em IAM)
aws bedrock-agentcore search-registry-records \ --search-query "weather" \ --registry-ids "<registryARN>" \ --region us-east-1
AWS SDK (registro com autorização de entrada baseada em IAM)
import boto3 client = boto3.client('bedrock-agentcore') response = client.search_registry_records( registryIds=['<registryARN>'], searchQuery='weather', maxResults=10 ) for record in response['registryRecords']: print(f"{record['name']} - {record['descriptorType']} - {record['status']}")
Cliente HTTP (registro com autorização de entrada baseada em OAuth)
Primeiro, obtenha uma ficha de portador:
SECRET_HASH=$(echo -n "<username><appClientId>" | openssl dgst -sha256 -hmac "<appClientSecret>" -binary | base64) aws cognito-idp initiate-auth \ --client-id "<appClientId>" \ --auth-flow USER_PASSWORD_AUTH \ --auth-parameters USERNAME="<username>",PASSWORD='<password>',SECRET_HASH="$SECRET_HASH" \ --region us-east-1 | jq -r '.AuthenticationResult.AccessToken'
Em seguida, pesquise com o token do portador:
curl -X POST "https://bedrock-agentcore.<region>.amazonaws.com/registry-records/search" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <accessToken>" \ -d '{"registryIds": ["<registryARN>"], "searchQuery": "weather", "maxResults": 10}'
Consistência eventual em AWS Pesquisa de registro de agentes
AWS O Agent Registry usa um modelo eventualmente consistente para indexação de pesquisas. Quando você aprova um registro de registro ligando UpdateRegistryRecordStatus ou por meio do console, o registro não aparece SearchRegistryRecords nem InvokeRegistryMcp resulta imediatamente. Normalmente, leva alguns segundos para que o registro aprovado seja indexado e se torne detectável, mas, em alguns casos, pode levar alguns minutos.
Durante esse período, você pode observar o seguinte comportamento:
-
Uma
SearchRegistryRecordsconsulta não retorna um registro que acabou de ser aprovado. -
O endpoint MCP do registro (
InvokeRegistryMcp) não inclui um registro aprovado recentemente nos resultados da ferramenta.
Somente registros com status Aprovado são incluídos nos resultados da pesquisa. Registros com status Rascunho, Aprovação Pendente, Rejeitado ou Obsoleto nunca são retornados por ou. SearchRegistryRecords InvokeRegistryMcp Você pode verificar o status atual de um registro chamandoGetRegistryRecord, que sempre retorna a revisão mais recente, independentemente do estado de indexação.
Para lidar com uma eventual consistência em seu aplicativo, recomendamos o seguinte:
-
Depois de aprovar um registro, confirme se ele pode ser descoberto ligando
SearchRegistryRecordscom uma estratégia de repetição que inclua recuo exponencial. -
Não presuma que um registro esteja ausente do registro se ele não aparecer nos resultados da pesquisa imediatamente após a aprovação. Ligue
GetRegistryRecordpara verificar o status do registro. -
Se você estiver integrando fluxos de trabalho de aprovação por meio da Amazon EventBridge
UpdateRegistryRecordStatus, adicione um breve atraso antes que os sistemas downstream consultem a API de pesquisa do registro recém-aprovado.
Para obter orientação geral sobre como configurar o comportamento de repetição em AWS SDKs, consulte Comportamento de repetição no Guia de referência de AWS SDKs e ferramentas.
Como os atributos do registro afetam a relevância da pesquisa
AWS O Agent Registry usa pesquisa híbrida que combina compreensão semântica com correspondência de palavras-chave para retornar resultados relevantes. Se um registro que você espera encontrar não aparecer nos resultados da pesquisa, entender quais atributos do registro influenciam a pesquisa pode ajudar.
Quais atributos de registro são usados para pesquisa
Os seguintes atributos do seu registro de registro são usados para determinar a relevância da pesquisa:
-
Nome — Usado para correspondência de palavras-chave. Nomes claros e descritivos que refletem o que o recurso faz melhoram a capacidade de descoberta de pesquisas de nomes exatos e parciais.
-
Descrição — Usada para correspondência semântica e de palavras-chave. As descrições escritas em linguagem natural que explicam a finalidade do recurso e os casos de uso comuns são mais fáceis de descobrir do que rótulos técnicos concisos.
-
Descritores — O conteúdo completo da definição do protocolo (definição do servidor MCP, cartão do agente, documentação de habilidades ou JSON personalizado) é usado para correspondência semântica. Isso inclui nomes de ferramentas, descrições de ferramentas, nomes de parâmetros de entrada e resumos de recursos.
-
Versão e tipo de descritor — Disponível como campos filtráveis. Os consumidores podem restringir os resultados usando filtros de metadados em
namedescriptorType, e.version
Como as consultas de pesquisa são processadas
Quando você ligaSearchRegistryRecords, o AWS Agent Registry executa duas pesquisas paralelamente no mesmo conjunto de registros indexados e mescla os resultados:
-
Pesquisa semântica — Sua consulta é convertida em uma representação vetorial e comparada com as representações vetoriais dos registros indexados. Isso encontra registros conceitualmente relacionados mesmo quando as palavras exatas em sua consulta não aparecem no registro. Por exemplo, uma consulta para “reservar um voo” pode corresponder a um registro chamado “serviço de reserva de viagem”.
-
Pesquisa por palavra-chave — Sua consulta é comparada com o conteúdo de texto dos campos de registro usando a relevância tradicional das palavras-chave. Isso é eficaz para pesquisas de nomes exatos e termos técnicos específicos. Por exemplo, uma consulta para “weather-api-v2" corresponde aos registros que contêm esse texto exato.
Se você incluir filtros de metadados em sua solicitação, os filtros serão aplicados às duas pesquisas antes que os resultados sejam pontuados e classificados. Isso significa que os filtros reduzem o conjunto de candidatos no qual a pesquisa semântica e por palavra-chave opera, em vez de filtrar os resultados após a classificação.
Como os resultados são classificados
Os resultados da pesquisa semântica e por palavra-chave são combinados em uma única lista classificada e retornados em ordem de relevância, com o registro mais relevante primeiro. A posição final de cada resultado é determinada por sua relevância nas duas pesquisas — um registro com alta classificação nos resultados semânticos e de palavras-chave aparecerá mais alto do que um registro com alta classificação em apenas uma. Na pesquisa por palavra-chave, o nome do registro tem a maior influência na classificação, seguido pela descrição e pelo conteúdo do descritor, que contribuem igualmente. Como os dois modos de pesquisa sempre são executados e contribuem para a classificação final, a forma como você escreve sua consulta afeta quais registros aparecem. As orientações a seguir podem ajudá-lo a obter melhores resultados, dependendo da sua intenção.
Escrevendo consultas de pesquisa eficazes
Quando você souber o nome ou identificador exato, use uma consulta curta e específica. A pesquisa por palavra-chave combina o texto exato com nomes de registros, descrições e conteúdo do descritor. Consultas curtas como “weather-api-v2" ou “pdf-processing” são eficazes para encontrar registros por nome.
Ao explorar por recurso ou caso de uso, use uma descrição em linguagem natural do que você precisa. A pesquisa semântica compreende a intenção conceitual, então consultas como “encontrar uma ferramenta que possa reservar voos” ou “extrair dados estruturados de documentos PDF” podem corresponder a registros relevantes, mesmo que essas palavras exatas não apareçam nos metadados do registro.
Evite misturar restrições semelhantes a filtros com intenção descritiva na mesma consulta. Uma consulta como “encontre todos os servidores MCP para previsões meteorológicas” envia a frase inteira por meio da pesquisa semântica e por palavra-chave. O componente semântico interpreta a frase completa como uma intenção conceitual, que pode revelar registros conceitualmente relacionados, mas que não correspondem ao atributo específico que você pretendia restringir. Em vez disso, use filtros de metadados para restrições baseadas em atributos e mantenha a consulta focada no tópico. Consulte Quando usar filtros de metadados em vez de texto de consulta.
Escrevendo registros detectáveis
-
Escreva descrições que expliquem o que o recurso faz e os problemas que ele resolve. A pesquisa semântica compreende a intenção, então “ajudar os clientes a rastrear as entregas de pacotes” é mais fácil de descobrir do que “endpoint de status de entrega”.
-
Forneça definições completas de ferramentas para servidores MCP. As descrições das ferramentas e as descrições dos parâmetros de entrada contribuem para a relevância da pesquisa.
-
Inclua palavras-chave relevantes em seu nome e descrição. A pesquisa por palavra-chave corresponde ao texto exato. Portanto, se os consumidores provavelmente pesquisarem termos específicos, certifique-se de que esses termos apareçam em seu registro.
Quando usar filtros de metadados em vez de texto de consulta
Use filtros de metadados quando sua intenção for restringir os resultados por um atributo conhecido, como tipo de registro, nome ou versão. Não incorpore restrições semelhantes a filtros no próprio texto da consulta. Por exemplo, se você quiser encontrar todos os servidores MCP relacionados ao clima, use um filtro de metadados para o tipo de registro e uma consulta para o tópico:
{ "searchQuery": "weather forecast", "filters": { "descriptorType": { "$eq": "MCP" } } }
Evite colocar restrições no texto da consulta, como “encontre todos os servidores MCP para previsões meteorológicas”. Como consultas mais longas tendem à correspondência semântica, as palavras “servidores MCP” são interpretadas como parte da intenção conceitual e não como um filtro exato. Isso pode fazer com que o componente semântico retorne registros conceitualmente relacionados à frase completa, mas que não correspondem ao atributo específico que você pretendia filtrar — por exemplo, retornar registros do agente sobre o clima junto com os registros do servidor MCP. O mesmo se aplica a qualquer restrição baseada em atributos. Se você quiser registros com um nome, versão ou tipo específico, use o filtro de metadados correspondente em vez de incluir esses termos na consulta.
Você pode filtrar nos seguintes campos:
-
name— Combine os registros pelo nome exato. -
descriptorType— Combine registros por tipo de recurso (por exemploMCP,A2A,,SKILL,CUSTOM). -
version— Combine os registros por string de versão.
Os filtros suportam operadores $eq (iguais), $ne (não iguais) e $in (correspondem a qualquer valor em uma lista) e podem ser combinados usando uma lógica. $and $or
Por exemplo, para pesquisar somente servidores MCP relacionados ao clima:
{ "searchQuery": "weather forecast", "filters": { "descriptorType": { "$eq": "MCP" } } }
Para excluir um tipo de recurso específico:
{ "searchQuery": "<your query>", "filters": { "descriptorType": { "$ne": "CUSTOM" } } }
Para corresponder a qualquer uma das várias versões:
{ "filters": { "version": { "$in": ["1.0", "1.1", "2.0"] } } }
A pesquisa retorna somente registros aprovados
Somente registros com status Aprovado aparecem nos resultados da pesquisa e por meio do endpoint MCP. Registros com status Rascunho, Aprovação Pendente, Rejeitado ou Obsoleto não são retornados. Se um registro aprovado recentemente não aparecer nos resultados, consulte Consistência eventual na pesquisa do AWS Agent Registry.