¿Qué es un cliente MCP?

Un cliente MCP es un subprograma de una aplicación de agente de IA y se comunica con un servidor MCP para obtener información y llevar a cabo tareas.

Metas de aprendizaje

Después de leer este artículo podrás:

  • Explica cómo interactúan los clientes y servidores de MCP
  • Entender los hosts MCP
  • Empieza a implementar clientes y servidores MCP en Cloudflare

Copiar el enlace del artículo

¿Qué es un cliente MCP?

Un cliente de Model Context Protocol (MCP) es un programa informático que, como parte de o bajo la dirección de un agente de IA, realiza solicitudes a un servidor MCP. La información que el cliente MCP obtiene del servidor MCP ayuda al agente de IA a tomar decisiones o llevar a cabo tareas. Piensa en un cliente de MCP como si fuera un asistente que puede hacer reservas en restaurantes o hacer un seguimiento de las personas en nombre de su empleador (el agente de IA).

Supongamos que Acme Corp. crea un agente de IA que puede pedir de forma autónoma conjuntos de muebles para los dormitorios de los niños en respuesta a simples prompts del cliente como: "Me gustaría amueblar la habitación de mi hijo de nueve años". Para encontrar las mejores opciones, el agente de IA necesitaría información sobre los muebles infantiles disponibles, sus precios y las dimensiones de los muebles en comparación con un dormitorio típico. Si los fabricantes de muebles exponen esta información mediante MCP, el agente de IA puede encargar a un cliente de MCP que solicite directamente la información deseada.

Los clientes MCP operan dentro de los hosts MCP: un host MCP es un agente o aplicación de IA. MCP no es como el "modelo cliente-servidor" sobre el que se construyó Internet, en el que originalmente se suponía que los "clientes" eran dispositivos discretos con sus propias direcciones IP. Más bien, los clientes, hosts y servidores de MCP pueden estar ejecutándose en la misma máquina, aunque no siempre es así.

Cómo funcionan los hosts MCP

Un host MCP es una aplicación de IA autónoma. Junto con sus otras funciones, la aplicación contiene uno o más clientes, que son programas subsidiarios del host. Los clientes ayudan al host a obtener la información necesaria o a llevar a cabo acciones para responder a los prompts del usuario final. Cada cliente se comunica directamente con un servidor MCP. Las conexiones adicionales del servidor requieren crear más clientes.

Diagrama: un dispositivo de usuario final ejecuta una aplicación de IA que consulta a un cliente MCP que, a su vez, consulta a un servidor MCP
Este diagrama muestra cómo los clientes y servidores de MCP interactúan internamente en una aplicación orientada al usuario cuando los servidores de MCP están alojados en Cloudflare.

Desde la perspectiva del usuario final, todo esto ocurre de manera oculta: lo que ven es que ingresan un prompt en una aplicación de IA, y la aplicación responde o lleva a cabo sus solicitudes. Pero en segundo plano, la aplicación depende, al menos parcialmente, de los clientes y servidores MCP para hacer el trabajo.

¿Qué es un servidor MCP?

Un servidor MCP es un programa de software que admite el uso de MCP y pone la información a disposición de los clientes de MCP. Los servidores MCP desempeñan un papel activo para ayudar a los clientes MCP a cumplir con sus prompts, por ejemplo, solicitando más contexto cuando sea necesario.

Los servidores MCP y los clientes MCP pueden ejecutarse en la misma máquina física. O bien, pueden ser dispositivos independientes que se conectan de forma remota entre sí a través de Internet. Un servidor MCP se puede alojar en un servidor web (o en Cloudflare, como en el diagrama anterior), pero no es necesario.

¿Cuáles son las funciones principales de los servidores MCP?

Los servidores MCP ponen a disposición de los clientes MCP varias funciones. Estas funciones ayudan a los clientes de MCP a llevar a cabo sus tareas.

  • Herramientas: estas son funciones que se pueden ejecutar para ayudar a llevar a cabo los prompts. Una herramienta de servidor MCP podría ser una función que llame a una API, por ejemplo.
  • Recursos: los recursos son fuentes guardadas de datos de solo lectura, como documentos, documentación de la API o Artículos del centro de conocimiento.
  • Prompts: plantillas almacenadas y estructuradas para invocar herramientas y recursos específicos.

¿Cuáles son las funciones principales de los clientes MCP?

Los clientes de MCP también ponen funciones a disposición de los servidores de MCP, que pueden solicitar información o aclaraciones a los clientes que utilizan estas funciones.

  • Obtención: una vez que se inicia una conexión, el servidor puede necesitar más contexto o información para cumplir con la solicitud del cliente. El servidor utiliza la función Obtención para obtener esta información del cliente, que a su vez puede preguntarle al usuario.
  • Raíces: los clientes pueden pedir a los servidores que se centren en ciertos subdirectorios de archivos para garantizar que el servidor genere una respuesta relevante. Imagina que en el ejemplo anterior un cliente le pide al servidor que se concentre en file:///home-goods/furniture/childrens-furniture/. De esta manera, es menos probable que el servidor proporcione al cliente información irrelevante que no ayude a satisfacer el prompt del usuario, como información sobre artículos para el hogar en general o camas para adultos.
  • Muestreo: el servidor puede enviar una solicitud al cliente para que la aplicación de IA complete una tarea.

Cómo crear un servidor MCP o un cliente MCP con Cloudflare

Cloudflare permite a los desarrolladores crear, probar e implementar sus propios clientes y servidores MCP como parte del desarrollo de sus propios agentes de IA. Los desarrolladores pueden crear en sus dispositivos locales e implementar en Cloudflare, o crear a través de sus cuentas de GitHub. La implementación de un servidor o cliente MCP en Cloudflare significa que pueden exponer herramientas y datos a agentes sin autoalojamiento y en milisegundos, en una red global que está aproximadamente a 50 milisegundos del 95 % de la población conectada a Internet a nivel mundial.

La autenticación a través de OAuth también se puede integrar en los servidores MCP. Sin autenticación, cualquiera puede conectarse y utilizar el servidor. Con la autenticación, solo las personas autorizadas pueden hacerlo. Por lo tanto, la autenticación puede ayudar a mantener la confidencialidad y la seguridad de los datos en un servidor MCP.

Para ver un tutorial completo sobre cómo crear un servidor MCP remoto con Cloudflare, consulta la documentación para desarrolladores de MCP de Cloudflare.