Qué es ARD y cómo descubre recursos para AI
Autor: Redacción Domeny.ForSale Publicado Actualizado
ARD (Agentic Resource Discovery) es una especificación abierta para describir y buscar recursos que pueden utilizar los agentes AI. Ayuda a una aplicación a encontrar una herramienta, un servidor MCP, otro agente o un conjunto de instrucciones adecuado para la tarea del usuario. Conecta las descripciones de recursos publicadas por sus propietarios con registros que las indexan y permiten buscarlas. Este artículo se basa en la especificación ARD .
¿Qué problema resuelve ARD?
Supongamos que le pides a un asistente: «Encuentra un dominio corto para una tienda de bicicletas». Para realizar la tarea, necesita acceso al catálogo de dominios y saber cómo buscar en él. En una aplicación pequeña, el desarrollador puede conectar de antemano la herramienta adecuada. Cuando hay miles de servicios disponibles, resulta difícil configurar manualmente cada integración e incluir todas las descripciones en el contexto del modelo.
ARD propone buscar los recursos según la necesidad. La aplicación envía una consulta al registro, recibe las descripciones pertinentes y elige qué recurso utilizar. Así, el contexto del modelo puede incluir información sobre los recursos seleccionados en lugar del catálogo completo.
Se trata de un mecanismo para descubrir capacidades. Una vez encontrado el recurso, la aplicación todavía debe admitir el modo de comunicación correspondiente y gestionar los permisos necesarios. La especificación separa la búsqueda del uso posterior de la herramienta. Principios de diseño de ARD
¿Cómo funciona ARD paso a paso?
En el proceso participan el editor del recurso, el registro y la aplicación que utiliza un agente AI.
- El editor describe el recurso. Indica su nombre, identificador, tipo y un documento que describe sus capacidades o sus instrucciones de uso.
- La descripción queda disponible en internet. La ubicación principal del manifiesto es
/.well-known/ard.json. La especificación también contempla, entre otras opciones, datos JSON-LD incrustados, un enlace HTMLrel="ard", la directivaAgentmapenrobots.txty registros DNS. - El registro obtiene e indexa las entradas. Utiliza sus datos para buscar los recursos adecuados.
- La aplicación describe la necesidad. Envía al registro una consulta en lenguaje natural, opcionalmente con filtros.
- La aplicación elige un resultado y lee la descripción del recurso. Después puede utilizarlo conforme al protocolo correspondiente y a sus propias reglas de acceso.
Por tanto, publicar un manifiesto no es lo mismo que gestionar un registro. El propietario de un sitio puede ofrecer un archivo estático sin poner en marcha su propio servicio de búsqueda. La obligación de ofrecer una interfaz de búsqueda REST corresponde a los registros. Descubrimiento e indexación de recursos
¿Qué contiene una entrada ARD?
Una entrada es una descripción de un recurso basada en el modelo JSON-LD. El manifiesto ard.json agrupa estas entradas en el array entries. Los campos más importantes son:
| Campo | Significado | Requisito |
|---|---|---|
identifier | Identificador único con el formato urn:air:<publisher>:<namespace>:<agent-name> | Obligatorio |
displayName | Nombre legible del recurso | Obligatorio |
type | Tipo del documento descrito, expresado como tipo de medio | Obligatorio |
url o data | Dirección del documento o su contenido incluido en la entrada | Exactamente uno de estos campos |
representativeQueries | Ejemplos de preguntas o instrucciones a las que responde el recurso | Se recomiendan 2–5 ejemplos |
capabilities | Etiquetas breves de las funciones, útiles para filtrar | Opcional |
El campo url apunta al documento descrito, por ejemplo, una ficha del servidor o un archivo de instrucciones. No tiene por qué ser la dirección a la que se envía una orden para ejecutar una tarea. Por su parte, el identificador urn:air:… permite distinguir la identidad del recurso de la ubicación donde se almacena su descripción.
representativeQueries tiene un papel especial: el registro utiliza las consultas de ejemplo para la indexación semántica. Sin este campo, la entrada puede seguir siendo válida en cuanto a su estructura, pero carecer de la información necesaria para encontrarla mediante ese tipo de búsqueda. En ese caso, la herramienta de comprobación de conformidad emite una advertencia, no un error de esquema.
Modelo de entrada y requisitos de los campos
¿Cómo busca una herramienta la aplicación?
El registro ofrece el endpoint POST /search. El cuerpo de una solicitud de ejemplo para un buscador de dominios podría ser el siguiente:
{
"query": {
"text": "encuentra un dominio en venta para una tienda de bicicletas",
"filter": {
"capabilities": ["searchDomainCatalog"]
}
},
"federation": "none",
"pageSize": 5
}
Este es un ejemplo de consulta a un registro que ha indexado el recurso correspondiente. query.text describe la necesidad, mientras que el filtro limita los resultados a las entradas que declaran la función indicada. pageSize limita el número de resultados por página.
Los registros también pueden colaborar entre sí. El parámetro federation admite tres valores: none indica una búsqueda en el índice propio; auto permite al registro consultar otros registros y combinar los resultados; y referrals devuelve además referencias a registros en los que el cliente puede buscar por su cuenta. El modo predeterminado es auto.
Interfaz de búsqueda
y
federación de registros
¿Cómo se relaciona ARD con MCP y agent skills?
Estas soluciones desempeñan funciones distintas dentro de un mismo proceso:
| Elemento | Función |
|---|---|
| ARD | Ayuda a encontrar un recurso que responda a una necesidad |
| MCP | Proporciona un modo de comunicación entre la aplicación AI y las herramientas y los datos disponibles |
| A2A | Permite la comunicación entre agentes |
| Agent skills | Aportan las instrucciones y los materiales necesarios para una tarea concreta |
ARD puede describir recursos representados en distintos formatos. Encontrar la entrada de un servidor MCP no implica conectarse automáticamente a ese servidor. La aplicación debe admitir la integración correspondiente. Tipos de recursos y separación de funciones
Ejemplo de Domeny.ForSale
Este sitio ofrece un
manifiesto ARD
. Contiene la descripción de una habilidad para buscar en el catálogo de dominios y artículos. El campo url apunta a las
instrucciones de uso del buscador
, y representativeQueries incluye, entre otros ejemplos, la búsqueda de un dominio para una tienda en línea.
Gracias a esta descripción, un cliente compatible con ARD puede saber que el sitio ofrece un recurso útil y dónde encontrar las instrucciones para utilizarlo. El archivo por sí solo no realiza búsquedas ni demuestra que un asistente concreto ya haya indexado el sitio.
¿Se puede confiar en el recurso encontrado?
La pertinencia respecto a la consulta y la fiabilidad son cuestiones distintas. El valor score que devuelve el registro, en una escala de 0–100, indica la pertinencia semántica. No es una evaluación de seguridad, un certificado ni una confirmación de permisos.
La especificación contempla el campo opcional trustManifest, que permite proporcionar información para verificar la identidad y la procedencia. Si se incluye, la identidad declarada debe estar vinculada al dominio del editor indicado en el identificador. ARD no define un procedimiento universal propio de firma; la verificación depende del sistema de confianza indicado.
Identidad y confianza en ARD
En la fecha de actualización del artículo, el documento describe la versión 0.91 con el estado «Proposal». Conviene basar la implementación en la especificación vigente y en las capacidades del cliente concreto. Esto también se aplica al antiguo nombre del manifiesto, ai-catalog.json, que la versión actual sustituye por la ruta ard.json.
Véase también: ¿Qué es ai-catalog.json? · ¿Qué es MCP? · ¿Qué son agent skills?
