Fecha de publicación: 18 de mayo de 2026
La declaración de la herramienta WebMCP debe ser clara, sin necesidad de que los desarrolladores o agentes miren los resultados y vuelvan a intentarlo. Ya sea que uses la API imperativa o la API declarativa, sigue estas prácticas recomendadas:
- Antes de compilar, crea una estrategia de herramientas.
- Usa un lenguaje claro y HTML semántico.
- Diseña tus esquemas y controla la entrada.
- Compila herramientas confiables.
- Prueba y depura.
Crea una estrategia de herramientas
Al igual que lo harías con cualquier aplicación de software, el primer paso debe ser planificar tu estrategia de herramientas:
- Cada herramienta debe constar de una sola función. Por ejemplo, una herramienta podría dirigir al usuario a un tipo de formulario específico, mientras que otra herramienta debería hacer coincidir los campos de entrada con la información del usuario. Ten cuidado de no crear herramientas superpuestas, ya que el agente podría confundirse sobre qué usar. Pregúntate: ¿Puedo cubrir varias tareas con la misma función?
- Administra el registro de herramientas. Registra las herramientas cuando sean útiles en un estado de página determinado y, luego, anula el registro cuando ya no se puedan usar.
- API imperativa: Puedes administrar el registro de forma dinámica
con
unregisterTooly .registerTool - API declarativa: Puedes administrar el registro de forma dinámica agregando o quitando los atributos de la herramienta en un formulario,
con
toolDescriptiony .toolName
- API imperativa: Puedes administrar el registro de forma dinámica
con
- Reduce la complejidad: Para la mayoría de las aplicaciones, el registro estático debería ser el enfoque predeterminado.
- Confía en que el agente completará la tarea*. En lugar de escribir instrucciones rígidas o negativas, supone que el agente puede comprender lo que se requiere para completar la tarea, en lugar de esperar que el agente administre un flujo exacto de pasos.
Si bien no hay una cantidad máxima de herramientas permitidas, cada herramienta ocupa parte de la ventana de contexto y agrega tiempo para completarla. Cuantas más herramientas proporciones y más se superpongan, más difícil será para el agente elegir correctamente. Experimenta para determinar qué es lo adecuado para tu aplicación.
Esto te ayuda a compilar herramientas individuales, sin superponer propósitos, y a administrar cuándo están disponibles estas herramientas.
Usa un lenguaje claro y código semántico
Usa un lenguaje claro y directo para nombrar las herramientas y describir su uso. Esto ayuda a los agentes a encontrar lo que necesitan, comprender lo que encuentran y usar esa información como espera el desarrollador.
Cuando escribas nombres de herramientas, distingue la ejecución de la iniciación y usa verbos que describan exactamente lo que sucede. Por ejemplo, create-event es una herramienta para la creación inmediata de eventos, pero start-event-creation-process es una herramienta que redirecciona al usuario a un formulario para crear el evento.
Una descripción clara debe describir qué hace la herramienta y cuándo usarla. Usa un lenguaje y preferencias positivos en lugar de un lenguaje negativo, como limitaciones.
"No uses esta herramienta para el clima".
Las limitaciones deben estar implícitas en una descripción bien escrita."Esta herramienta puede crear un evento de calendario programado para una fecha y hora específicas".
Minimiza la computación cognitiva
Al igual que debes minimizar la carga cognitiva para los humanos que completan tareas complejas, también debes minimizar la computación cognitiva para el modelo:
- Acepta la entrada de usuario sin procesar. Evita pedirle al agente que realice operaciones matemáticas o que transforme las cadenas de entrada. Por ejemplo, si un usuario dice "11:00 a 15:00", la herramienta debe aceptar esto como una cadena. Evita pedirle al modelo que calcule los minutos entre estos horarios.
- Declara tipos específicos para los parámetros, como cadena, número o enum.
- Explica por qué tomaste ciertas decisiones. La elección que hiciste debe ser autoexplicativa. El por qué ayuda a los agentes a tomar mejores decisiones. Por ejemplo, si tienes una tienda de comercio electrónico, declara el tipo de envío con lenguaje natural en lugar de usar un ID ambiguo:
shipping="Express"en lugar deshipping_id=1.
Prioriza la confiabilidad
Los agentes y los humanos se benefician de las herramientas que se comportan como se espera:
- Establece una falla correcta para los límites de frecuencia. Las herramientas deben permitir una repetición razonable, como para la comparación de precios. Si una herramienta tiene un límite de frecuencia, muestra un error significativo o aconseja al usuario que realice la tarea de forma manual.
- Actualiza el estado de la interfaz después de que se completen las funciones. Los agentes pueden depender de la interfaz para planificar los próximos pasos, mientras que las funciones pueden tardar más en completarse que la carga de la interfaz. El agente debe confirmar que la función se completó una vez que se actualizó la interfaz o solicitar una actualización nuevamente.
- Valida estrictamente en el código y de forma flexible en el esquema. Las restricciones y las pruebas se deben usar para las funciones y el código que tienen lógica binaria. Si bien las restricciones de esquema pueden ser útiles, no están garantizadas. Agrega errores descriptivos al código de tu función para permitir que el modelo se corrija automáticamente y vuelva a intentarlo con parámetros nuevos y válidos.
Pruebas y depuración de Eval
Crea pruebas de evaluación y haz que tus herramientas estén disponibles para la depuración. A diferencia de las pruebas de unidades deterministas, las evaluaciones no se pueden codificar de forma rígida, ya que los resultados pueden adoptar formas imprevistas.
- Define el problema. Puedes enmarcar tu problema como un contrato de API, incluido el tipo de entrada, el formato de salida y cualquier restricción adicional.
- Define un modelo de referencia y un resultado ideal. En especial con la entrada de texto, es importante comprender qué tipos de resultados pueden brindarte el resultado que esperas.
- Determina cómo se evaluará el resultado. Es probable que identifiques y midas resultados subjetivos y cualitativos en función de la calidad de la entrada, la utilidad y la capacidad de realizar la siguiente tarea. Hay varias técnicas que puedes usar para evaluar el resultado, incluidas las verificaciones basadas en código para los resultados basados en reglas (límites de caracteres) y LLM-as-a-judge.
Evita agregar reglas estrictas para corregir problemas con un modelo en particular. Por ejemplo, si incluyes un campo de selección para tratamientos, el modelo puede tomar la decisión incorrecta. En lugar de agregar reglas estrictas para corregir este problema, abstrae y ajusta tu herramienta. Es posible que sea mejor establecer este campo como opcional. Luego, pídele al agente que le pregunte al usuario qué opción tiene sentido para garantizar que el usuario esté satisfecho con el resultado.
Participa y comparte comentarios
WebMCP está en debate activo y está sujeto a cambios en el futuro. Si pruebas estas APIs y tienes comentarios, nos encantaría conocerlos.
- Lee la explicación de WebMCP, haz preguntas y participa en el debate.
- Revisa la implementación de Chrome en Chrome Status.
- Únete al programa de vista previa anticipada para obtener una vista previa de las APIs nuevas y acceder a nuestra lista de distribución.
- Si tienes comentarios sobre la implementación de Chrome, informa un error de Chromium.