Básico Lección 8 de 17 ≈ 35 min de lectura Especificación 2026-07-28

Ejemplo práctico

Especificación MCP 2026-07-28 · revisada el 2 de octubre de 2026

Una agente de soporte de Nortia resuelve la incidencia de un pedido dañado con tres servidores MCP. El recorrido completo, mensaje a mensaje: qué ve la agente, qué ve el modelo y qué viaja por la red.

Qué aprenderás

  • Seguir un caso real de principio a fin e identificar qué método del protocolo interviene en cada paso
  • Distinguir en cada paso qué ve la persona, qué recibe el modelo y qué viaja por la red
  • Explicar por qué un abono se confirma con una petición de varias rondas y qué protege el requestState
  • Asignar cada fallo posible a la pieza que debe detectarlo y tratarlo: host, cliente, servidor o modelo

Contenido de la lección

  1. 01 El problema
  2. 02 Tres planos: la persona, el modelo y la red
  3. 03 Descubrimiento y contexto
  4. 04 Reunir los hechos con tools
  5. 05 El abono: una confirmación en varias rondas
  6. 06 La respuesta al cliente con un prompt
  7. 07 En producción: qué falló y qué pudo fallar

Además: quiz de comprobación y desafío práctico.

Extracto

Lucía Ferrer es agente de soporte en la oficina de Madrid. Abre el ticket TCK-88213: Ferretería Arganda S.L. dice que el pedido PED-2026-004812 llegó con un palé reventado y pide que le devuelvan el dinero. En su consola de soporte escribe: «Resuelve este ticket según la política de daños».

Para resolverlo hay que tocar tres sistemas. El ticket y la política están en soporte, el pedido y el albarán en pedidos, y la factura y el abono en facturación. Cada sistema tiene su servidor MCP (nortia-soporte, nortia-pedidos, nortia-facturacion), y ninguno conoce a los otros dos. El abono, además, mueve dinero y no se puede deshacer, así que la política exige que lo confirme una persona.

Fin del extracto · la lección sigue con 6 secciones más

Artículos relacionados

Preguntas frecuentes

¿Cómo funciona MCP paso a paso en un caso real?

Primero el host descubre qué ofrece cada servidor (server/discover, tools/list, resources/list, prompts/list), con la versión y las capacidades del cliente dentro de _meta en cada petición; después el modelo propone llamadas a tools, el host decide si las aprueba y el cliente las envía con tools/call; y al final el modelo redacta con los resultados. En la lección se sigue, mensaje a mensaje, una incidencia de soporte de Nortia que pasa por tres servidores (soporte, pedidos y facturación), separando lo que ve la persona, lo que recibe el modelo y lo que viaja por la red.

¿Puede un servidor MCP comunicarse con otro servidor MCP?

No: el protocolo no da a un servidor ningún canal para llamar a otro ni para ver lo que este devuelve. Cuando una tarea necesita varios sistemas, es el modelo quien junta la información y el host el que traslada, por ejemplo, el identificador de factura que obtuvo de un servidor a la llamada que hace a otro. Gracias a eso un servidor puede cambiar el sistema que tiene detrás sin que los demás lo noten, siempre que mantenga la definición de sus tools.

¿Cómo evitar que una tool de MCP se ejecute dos veces al reintentar una llamada?

Con una clave de idempotencia que viaja como argumento de la tool y que el servidor guarda junto al resultado con una restricción de unicidad: si la misma clave vuelve a llegar, devuelve lo que ya hizo en lugar de repetirlo. Hace falta porque en la versión 2026-07-28 un stream cortado no se reanuda, y el cliente, sin saber si la operación terminó, solo puede reenviarla con un id nuevo, y el servidor la trata como si fuera otra. Es un dato de la aplicación ligado a un identificador explícito, no una sesión del protocolo.

Temario del curso