View a markdown version of this page

Búsqueda de registros - Amazon Bedrock AgentCore

Búsqueda de registros

Próxima migración del espacio de nombres

AWS Actualmente, Agent Registry se encuentra en versión preliminar pública en el espacio de nombres bedrock-agentcore. A partir del 6 de agosto de 2026, el servicio pasará al espacio de nombres del registro de agentes. Si utiliza AWS Agent Registry, debe actualizar los puntos finales, las políticas de IAM, los clientes del SDK, los scripts de CLI y los datos de registro. Para obtener más información sobre la migración desde una versión preliminar pública, consulte la guía completa de migración del registro.

Parámetros de la solicitud

  • SearchQuery (obligatorio): puede ser cualquier consulta en lenguaje natural de 1 a 256 caracteres

  • ID de registro (obligatorio): en qué registro se realizará la búsqueda. Admite exactamente un ARN o ID de registro

  • maxResults (opcional): cuántos registros se devuelven en la respuesta de búsqueda. Puede tomar cualquier valor entre 1 y 20 y el valor predeterminado es 10

  • filtros (opcional): expresión de filtro de metadatos

Filtros de metadatos

Operadores:$eq,$ne,$in. Lógico:$and,$or. Campos: nombre, tipo de descripción, versión.

Ejemplo: {"descriptorType": {"$eq": "MCP"}}

Combinado: {"$and": [{"descriptorType": {"$eq": "MCP"}}, {"version": {"$eq": "1.0"}}]}

Consola

  1. Abra la página de detalles del registro.

  2. Seleccione la pestaña Buscar registros.

  3. Introduzca su consulta de búsqueda y vea los resultados.

nota

La búsqueda en la consola solo está disponible para IAM-authorized los registros. En el caso de JWT-authorized los registros, utilice la API de búsqueda directamente con un cliente HTTP (por ejemplocurl) y un token portador JWT válido, o utilice el punto final MCP del registro mediante un cliente MCP.

AWS CLI (registro con autorización de entrada basada en IAM)

aws bedrock-agentcore search-registry-records \ --search-query "weather" \ --registry-ids "<registryARN>" \ --region us-east-1

AWS SDK (registro con autorización de entrada basada en 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 con autorización de entrada basada en OAuth)

Primero obtén un token 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'

Luego busca con la ficha de 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}'

Coherencia eventual en AWS Búsqueda en el registro de agentes

AWS Agent Registry utiliza un modelo eventualmente coherente para la indexación de búsquedas. Al aprobar un registro de registro mediante una llamada UpdateRegistryRecordStatus o a través de la consola, el registro no aparece SearchRegistryRecords o aparece InvokeRegistryMcp inmediatamente. Normalmente, el registro aprobado tarda unos segundos en indexarse y hacerse visible, pero en algunos casos puede tardar hasta unos minutos.

Durante este tiempo, es posible que observe el siguiente comportamiento:

  • Una SearchRegistryRecords consulta no devuelve un registro que se acaba de aprobar.

  • El punto final del registro MCP (InvokeRegistryMcp) no incluye un registro aprobado recientemente en los resultados de la herramienta.

Solo los registros con el estado Aprobado se incluyen en los resultados de la búsqueda. Los registros en estado Borrador, Pendiente de aprobación, Rechazado o Obsoleto nunca son devueltos por SearchRegistryRecords oInvokeRegistryMcp. Puede comprobar el estado actual de un registro mediante una llamadaGetRegistryRecord, que siempre devuelve la última revisión, independientemente del estado de indexación.

Para gestionar la posible coherencia de su solicitud, le recomendamos lo siguiente:

  • Tras aprobar un registro, confirme que se pueda detectar mediante una estrategia de reintento que incluya un retroceso exponencial. SearchRegistryRecords

  • No dé por sentado que falta un registro en el registro si no aparece en los resultados de búsqueda inmediatamente después de la aprobación. Llame GetRegistryRecord para verificar el estado del registro.

  • Si vas a integrar los flujos de trabajo de aprobación a través de Amazon EventBridge y UpdateRegistryRecordStatus añades un breve retraso antes de que los sistemas intermedios consulten la API de búsqueda para encontrar el registro recién aprobado.

Para obtener información general sobre cómo configurar el comportamiento de reintento en AWS los SDK, consulta el artículo sobre el comportamiento de los reintentos en la Guía de referencia de los AWS SDK y las herramientas.

Cómo afectan los atributos de los registros a la relevancia de las búsquedas

AWS Agent Registry utiliza una búsqueda híbrida que combina la comprensión semántica con la coincidencia de palabras clave para obtener resultados relevantes. Si un registro que espera encontrar no aparece en los resultados de la búsqueda, puede ser útil comprender qué atributos del registro influyen en la búsqueda.

Qué atributos de registro se utilizan para la búsqueda

Los siguientes atributos del registro se utilizan para determinar la relevancia de la búsqueda:

  • Nombre: se utiliza para buscar coincidencias de palabras clave. Los nombres claros y descriptivos que reflejan lo que hace el recurso mejoran la visibilidad en las búsquedas de nombres exactas y parciales.

  • Descripción: se usa tanto para buscar coincidencias semánticas como de palabras clave. Las descripciones escritas en lenguaje natural que explican el propósito del recurso y los casos de uso más comunes son más fáciles de encontrar que las etiquetas técnicas concisas.

  • Descriptores: el contenido completo de la definición de su protocolo (definición del servidor MCP, tarjeta de agente, documentación sobre habilidades o JSON personalizado) se utiliza para la comparación semántica. Esto incluye los nombres de las herramientas, las descripciones de las herramientas, los nombres de los parámetros de entrada y los resúmenes de las capacidades.

  • Tipo de versión y descriptor: disponibles como campos filtrables. Los consumidores pueden restringir los resultados mediante filtros de metadatos enname, ydescriptorType. version

Cómo se procesan las consultas de búsqueda

Cuando llamaSearchRegistryRecords, AWS Agent Registry ejecuta dos búsquedas en paralelo en el mismo conjunto de registros indexados y combina los resultados:

  • Búsqueda semántica: la consulta se convierte en una representación vectorial y se compara con las representaciones vectoriales de los registros indexados. Esto busca registros relacionados conceptualmente incluso cuando las palabras exactas de la consulta no aparecen en el registro. Por ejemplo, una consulta de «reservar un vuelo» puede coincidir con un registro denominado «servicio de reserva de viajes».

  • Búsqueda por palabra clave: la consulta se compara con el contenido de texto de los campos de registro utilizando la relevancia de las palabras clave tradicionales. Esto resulta eficaz para búsquedas de nombres exactos y términos técnicos específicos. Por ejemplo, una consulta de «weather-api-v2" coincide con los registros que contienen ese texto exacto.

Si incluye filtros de metadatos en la solicitud, los filtros se aplican a ambas búsquedas antes de puntuar y clasificar los resultados. Esto significa que los filtros reducen el conjunto de candidatos en el que funcionan las búsquedas semánticas y por palabras clave, en lugar de filtrar los resultados después de clasificarlos.

¿Cómo se clasifican los resultados

Los resultados de las búsquedas semánticas y de palabras clave se combinan en una única lista de clasificación y se muestran por orden de relevancia, con el registro más relevante en primer lugar. La posición final de cada resultado viene determinada por su relevancia en ambas búsquedas: un registro que ocupe un lugar destacado tanto en los resultados semánticos como en los de palabras clave aparecerá por encima de un registro que ocupe un lugar destacado solo en una. En las búsquedas por palabras clave, el nombre del registro es el que más influye en la clasificación, seguido por la descripción y el contenido del descriptor, que contribuyen en igual medida. Como ambos modos de búsqueda se ejecutan siempre y contribuyen a la clasificación final, la forma en que escribas la consulta afecta a los registros que aparecen. La siguiente guía puede ayudarte a obtener mejores resultados en función de tu intención.

Redactar consultas de búsqueda eficaces

Cuando sepas el nombre o el identificador exactos, utiliza una consulta breve y específica. La búsqueda por palabra clave compara el texto exacto con los nombres de los registros, las descripciones y el contenido del descriptor. Las consultas breves, como «weather-api-v2" o «procesamiento de archivos PDF», son eficaces para buscar registros por nombre.

Cuando explore por capacidad o caso de uso, utilice una descripción en lenguaje natural de lo que necesita. La búsqueda semántica entiende la intención conceptual, por lo que consultas como «buscar una herramienta que pueda reservar vuelos» o «extraer datos estructurados de documentos PDF» pueden coincidir con los registros relevantes, incluso si esas palabras exactas no aparecen en los metadatos del registro.

Evita mezclar restricciones similares a las de un filtro con una intención descriptiva en la misma consulta. Una consulta como «busca todos los servidores MCP para obtener pronósticos meteorológicos» envía la oración completa mediante una búsqueda semántica y por palabra clave. El componente semántico interpreta la oración completa como una intención conceptual, que permite mostrar registros que están relacionados conceptualmente pero que no coinciden con el atributo específico que se pretendía restringir. En su lugar, utilice filtros de metadatos para las restricciones basadas en atributos y mantenga la consulta centrada en el tema. Consulte Cuándo usar filtros de metadatos en lugar de consultar texto.

Escribir registros identificables

  • Escribe descripciones que expliquen lo que hace el recurso y los problemas que resuelve. La búsqueda semántica entiende la intención, por lo que «ayuda a los clientes a rastrear las entregas de paquetes» es más fácil de detectar que «el estado de la entrega y el punto final».

  • Proporcione definiciones completas de herramientas para los servidores MCP. Todas las descripciones de las herramientas y las descripciones de los parámetros de entrada contribuyen a la relevancia de la búsqueda.

  • Incluye palabras clave relevantes en tu nombre y descripción. La búsqueda por palabra clave coincide con el texto exacto, por lo que si es probable que los consumidores busquen términos específicos, asegúrate de que esos términos aparezcan en tu registro.

Cuándo usar filtros de metadatos en lugar de texto de consulta

Use filtros de metadatos cuando su intención sea restringir los resultados por un atributo conocido, como el tipo de registro, el nombre o la versión. No incruste restricciones tipo filtro en el propio texto de la consulta. Por ejemplo, si desea buscar todos los servidores MCP relacionados con el clima, utilice un filtro de metadatos para el tipo de registro y una consulta para el tema:

{ "searchQuery": "weather forecast", "filters": { "descriptorType": { "$eq": "MCP" } } }

Evite incluir una restricción en el texto de la consulta, por ejemplo, «busque todos los servidores MCP para las previsiones meteorológicas». Como las consultas más largas tienden a buscar coincidencias semánticas, las palabras «servidores MCP» se interpretan como parte de la intención conceptual y no como un filtro exacto. Esto puede provocar que el componente semántico devuelva registros relacionados conceptualmente con la oración completa, pero que no coincidan con el atributo específico por el que pretendía filtrar; por ejemplo, devuelva registros de agentes sobre el clima junto con los registros del servidor MCP. Lo mismo se aplica a cualquier restricción basada en atributos. Si desea registros con un nombre, versión o tipo específicos, utilice el filtro de metadatos correspondiente en lugar de incluir esos términos en la consulta.

Puede filtrar por los siguientes campos:

  • name— Hacer coincidir los registros por nombre exacto.

  • descriptorType— Hacer coincidir los registros por tipo de recurso (por ejemploMCP,A2A,,SKILL,CUSTOM).

  • version— Hacer coincidir los registros por cadena de versión.

Los filtros admiten operadores $eq (iguales), $ne (no iguales) y $in (coinciden con cualquier valor de una lista) y se pueden combinar mediante $and la $or lógica.

Por ejemplo, para buscar únicamente servidores MCP relacionados con el clima:

{ "searchQuery": "weather forecast", "filters": { "descriptorType": { "$eq": "MCP" } } }

Para excluir un tipo de recurso específico:

{ "searchQuery": "<your query>", "filters": { "descriptorType": { "$ne": "CUSTOM" } } }

Para que coincida con alguna de las distintas versiones:

{ "filters": { "version": { "$in": ["1.0", "1.1", "2.0"] } } }

La búsqueda devuelve solo los registros aprobados

Solo los registros con el estado Aprobado aparecen en los resultados de búsqueda y en el punto final del MCP. No se devuelven los registros en estado Borrador, Pendiente de aprobación, Rechazado o Obsoleto. Si un registro aprobado recientemente no aparece en los resultados, consulte Coherencia eventual en la búsqueda en el Registro de AWS Agentes.