Prácticas recomendadas para WebMCP

Alexandra Klepper
Alexandra Klepper

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 los agentes revisen 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 código HTML semántico.
  • Diseña tus esquemas y controla la entrada.
  • Crea herramientas confiables.
  • Prueba y depura.

Crea una estrategia de herramientas

Al igual que lo harías con cualquier aplicación de software, tu primer paso debería 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 abarcar varias tareas con la misma función?
  • Administra el registro de herramientas. Registra las herramientas cuando sean útiles en un determinado estado de la página y, luego, cancela el registro cuando la herramienta ya no se pueda usar.
    • API imperativa: Puedes administrar el registro de forma dinámica con registerTool.
    • API declarativa: Puedes administrar el registro de forma dinámica agregando o quitando los atributos de la herramienta en un formulario, con toolname y tooldescription.
  • 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, supón que el agente puede comprender lo que se requiere para completar la tarea, en lugar de esperar que administre un flujo exacto de pasos.

Si bien no hay una cantidad máxima de herramientas permitidas, cada una ocupa parte de la ventana de contexto y aumenta el tiempo de finalización. Cuantas más herramientas proporciones y cuanto más se superpongan, más difícil será para el agente elegir la correcta. Experimenta para determinar qué es lo adecuado para tu aplicación.

Esto te ayuda a crear herramientas individuales, sin superponer propósitos, y a administrar cuándo están disponibles.

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 los nombres de las 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 indicar qué hace la herramienta y cuándo usarla. Usa lenguaje y preferencias positivos en lugar de lenguaje negativo, como limitaciones.

Qué no debes hacer

"No uses esta herramienta para consultar el clima".

Las limitaciones deben ser implícitas en una descripción bien escrita.
Qué debes hacer

"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 las personas que completan tareas complejas, también debes minimizar la computación cognitiva para el modelo:

  • Acepta la entrada del usuario sin procesar. Evita pedirle al agente que realice cálculos matemáticos o transforme las cadenas de entrada. Por ejemplo, si un usuario dice "De 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 enumeración.
  • Explica por qué tomaste ciertas decisiones. La elección que hiciste debe ser autoexplicativa. El porqué 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 de shipping_id=1.

Prioriza la confiabilidad

Los agentes y los humanos se benefician de las herramientas que se comportan según lo esperado:

  • 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, devuelve 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 de forma estricta 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 la evaluación

Crea pruebas de evaluación y haz que tus herramientas estén disponibles para la depuración. A diferencia de las pruebas de unidades determinísticas, las evaluaciones no se pueden codificar de forma rígida, ya que los resultados pueden adoptar formas imprevistas.

  • Define el problema. Puedes plantear tu problema como un contrato de API, incluidos el tipo de entrada, el formato de salida y cualquier restricción adicional.
  • Define un modelo de referencia y un resultado ideal. Especialmente 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, la utilidad y la capacidad de la entrada para completar la siguiente tarea. Existen 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 el LLM-as-a-judge.

Evita agregar reglas específicas para corregir problemas con un modelo en particular. Por ejemplo, si incluyes un campo de selección para tratamientos, es posible que el modelo tome la decisión incorrecta. En lugar de agregar reglas específicas para solucionar este problema, abstrae y ajusta tu herramienta. Lo mejor es establecer este campo como opcional. Luego, pídele al agente que le pregunte al usuario qué opción tiene sentido para asegurarse de que esté conforme con el resultado.

Interactúa 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.