¿Cómo funciona MCP? Arquitectura, Client, Server y herramientas
MCP (Model Context Protocol) permite que aplicaciones de inteligencia artificial se comuniquen con herramientas, recursos y sistemas externos mediante una arquitectura estandarizada. Aprende cómo funciona MCP paso a paso, qué hacen el Host, el Client y el Server y cómo se descubren y ejecutan las herramientas.
¿Cómo funciona MCP?
MCP funciona mediante una arquitectura en la que una aplicación anfitriona o Host utiliza uno o más MCP Client para comunicarse con MCP Server que proporcionan herramientas, recursos y prompts.
El cliente descubre las capacidades disponibles, puede consultar recursos o listar herramientas y, cuando una operación lo requiere, solicitar la ejecución de una herramienta mediante el protocolo. De forma simplificada: Host → Client → Server → capacidad externa.
Entiende cómo funciona MCP de principio a fin
Recorre la arquitectura, el descubrimiento de capacidades, la ejecución de herramientas, los transportes y la relación de MCP con APIs y agentes de inteligencia artificial.
MCP separa la aplicación de IA de las capacidades externas
El objetivo de MCP no es convertirse en otro modelo de inteligencia artificial. Su función es definir una forma común de intercambio entre una aplicación compatible y los sistemas que esa aplicación necesita consultar o utilizar.
Coordina la experiencia
El Host es la aplicación que integra la experiencia de IA y administra uno o varios clientes MCP.
Mantiene la conexión
Cada MCP Client mantiene la comunicación con su servidor correspondiente y obtiene sus capacidades.
Proporciona capacidades
Un servidor MCP puede proporcionar herramientas, recursos y prompts para que el cliente los utilice.
¿Cómo está formada la arquitectura de MCP?
MCP utiliza una arquitectura cliente-servidor. Un Host puede mantener conexiones con uno o varios servidores y crea un cliente MCP para cada servidor con el que necesita comunicarse.
Host
Es la aplicación anfitriona que coordina uno o varios clientes MCP y utiliza la información y capacidades proporcionadas por ellos.
MCP Client
Es el componente que mantiene la comunicación con un servidor MCP concreto.
MCP Server
Es el programa que proporciona contexto y capacidades al cliente MCP.
Sistema externo
Puede ser una API, base de datos, sistema de archivos, servicio empresarial u otra fuente de información o funcionalidad.
Aplicación de IA → Host → MCP Client → MCP Server → herramienta, recurso o servicio externo.
Host, Client y Server no significan lo mismo
Separar estos tres conceptos evita muchos errores al estudiar o implementar MCP.
| Componente | Responsabilidad | Relación |
|---|---|---|
| Host | Coordina la aplicación de IA y sus conexiones MCP. | Puede gestionar varios clientes. |
| MCP Client | Mantiene la comunicación con un servidor concreto. | Existe dentro del Host. |
| MCP Server | Proporciona contexto y capacidades al cliente. | Puede ejecutarse localmente o de forma remota. |
Un mismo Host puede conectarse a distintos servidores. Por ejemplo, una aplicación de desarrollo puede mantener una conexión con un servidor de archivos y otra con un servidor especializado en una herramienta externa.
Cada servidor tiene su propio cliente dentro del Host. Esto permite que las capacidades de cada conexión se mantengan separadas.
MCP tiene una capa de datos y una capa de transporte
Esta separación permite diferenciar qué mensajes intercambian los participantes de cómo se transportan esos mensajes.
Capa de datos
Define el protocolo basado en JSON-RPC 2.0, el descubrimiento de capacidades y primitivas como tools, resources, prompts y notificaciones.
Capa de transporte
Define cómo se establece la comunicación, cómo se transportan los mensajes y cómo se gestionan aspectos relacionados con la autorización.
JSON-RPC 2.0 como base de intercambio
MCP utiliza JSON-RPC 2.0 para definir la estructura y semántica de las solicitudes, respuestas y notificaciones entre clientes y servidores.
Esto permite que métodos como tools/list y tools/call mantengan una estructura coherente independientemente de si la comunicación utiliza un transporte local o remoto.
¿Cómo funciona MCP paso a paso?
El flujo exacto puede variar según la aplicación, pero la siguiente secuencia permite entender el concepto general.
El usuario solicita una tarea
La persona plantea una tarea a la aplicación de IA y esa tarea puede requerir información o una acción externa.
El Host dispone de conexiones MCP
La aplicación anfitriona puede tener uno o varios clientes conectados con servidores MCP.
El cliente descubre capacidades
El cliente puede conocer qué versión del protocolo y qué capacidades admite el servidor y consultar qué herramientas y recursos están disponibles.
La aplicación determina qué necesita
Con las capacidades conocidas, la aplicación puede decidir qué recurso consultar o qué herramienta utilizar para resolver la tarea.
El cliente envía la solicitud
El MCP Client transmite la solicitud al servidor mediante el transporte configurado.
El servidor procesa la operación
El MCP Server ejecuta la capacidad solicitada o recupera la información correspondiente.
El resultado vuelve al cliente
El servidor devuelve una respuesta estructurada mediante el protocolo.
La aplicación continúa la tarea
La aplicación puede incorporar el resultado al contexto de la tarea y continuar generando una respuesta o realizando otras operaciones.
¿Cómo descubre MCP qué puede hacer un servidor?
El descubrimiento evita que el cliente tenga que asumir qué capacidades existen en cada servidor.
server/discover
En la arquitectura actual, MCP define server/discover como el mecanismo que permite obtener información sobre las versiones compatibles, las capacidades y la identidad del servidor.
El intercambio permite que el cliente conozca qué puede soportar el servidor antes de utilizar capacidades concretas. El resultado puede incluir información de versión, herramientas, recursos y otras funcionalidades.
Descubrimiento de herramientas
Después de conocer las capacidades generales, el cliente puede solicitar la lista de herramientas mediante tools/list.
La respuesta puede contener el nombre de cada herramienta, su descripción y un esquema de entrada que describe los argumentos que acepta.
Que el cliente conozca una herramienta no significa que automáticamente deba ejecutarla. El descubrimiento informa sobre las capacidades disponibles; una llamada posterior es una operación independiente.
¿Cómo descubre y ejecuta una herramienta MCP?
Las herramientas representan funciones ejecutables que el servidor expone para que una aplicación compatible pueda utilizarlas.
tools/list
El cliente solicita la lista de herramientas disponibles.
Descripción
Cada herramienta puede indicar nombre, descripción y esquema de entrada.
tools/call
El cliente puede solicitar la ejecución indicando la herramienta y sus argumentos.
Resultado
El servidor procesa la operación y devuelve una respuesta.
Ejemplo conceptual
Imagina un servidor MCP que ofrece una herramienta llamada consultar_pedido. El cliente primero descubre que existe y conoce qué argumentos necesita. Después puede invocarla proporcionando el identificador de un pedido.
{
"method": "tools/call",
"params": {
"name": "consultar_pedido",
"arguments": {
"pedido_id": "10025"
}
}
}
El ejemplo representa la idea general del método. La estructura exacta, validación, autenticación y operación interna dependen del servidor y de la implementación utilizada.
¿Cómo se comunican un MCP Client y un MCP Server?
El protocolo separa los mensajes MCP del mecanismo usado para transportarlos entre cliente y servidor.
| Transporte | Característica | Entorno |
|---|---|---|
| stdio | Utiliza entrada y salida estándar para comunicar procesos directamente. | Habitualmente local. |
| Streamable HTTP | Utiliza HTTP para enviar mensajes MCP y puede utilizar Server-Sent Events cuando se necesita streaming. | Habitualmente remoto o basado en infraestructura HTTP. |
La misma lógica puede viajar por transportes diferentes
El transporte define cómo viajan los mensajes, pero no cambia la idea fundamental del protocolo. Una solicitud MCP conserva su estructura lógica aunque el cliente y el servidor se comuniquen localmente mediante stdio o de forma remota mediante Streamable HTTP.
Un servidor local puede ejecutarse en el mismo equipo que la aplicación, mientras que un servidor remoto puede estar alojado en otra infraestructura. La diferencia está relacionada con dónde se ejecuta y cómo se transporta la comunicación, no con que deje de ser un servidor MCP.
¿Cómo funcionan los recursos en MCP?
Las tools permiten realizar acciones, mientras que los resources representan fuentes de información que pueden proporcionar contexto a la aplicación.
Información externa
Un recurso puede representar información procedente de una fuente externa, como contenido de archivos o datos asociados con un sistema.
Información utilizable
La aplicación puede utilizar la información obtenida como contexto para resolver una tarea.
Recursos direccionables
Los recursos MCP se identifican mediante mecanismos definidos por el protocolo para permitir su descubrimiento y lectura.
¿Qué papel tienen los prompts en MCP?
Los prompts representan plantillas reutilizables que un servidor puede ofrecer para estructurar interacciones.
Un prompt dentro del ecosistema MCP no debe confundirse con el mensaje que un usuario escribe directamente en una conversación. Se trata de una capacidad que un servidor puede exponer para ayudar a estructurar determinadas interacciones con modelos de lenguaje.
Esto permite que una aplicación compatible pueda descubrir plantillas disponibles y utilizarlas dentro del flujo que corresponda.
¿Qué pasa cuando cambian las capacidades de un servidor?
MCP también contempla notificaciones para comunicar cambios dinámicos entre servidores y clientes.
Supongamos que un servidor dispone de varias herramientas y que posteriormente incorpora otra capacidad. Un mecanismo de notificación puede permitir que los clientes conozcan que la lista disponible cambió.
Por qué es útil
En ecosistemas donde las capacidades no son completamente estáticas, las notificaciones ayudan a que el cliente mantenga actualizado el conocimiento sobre las herramientas disponibles.
La especificación actual utiliza mecanismos de suscripción para que el cliente indique qué tipos de notificaciones quiere recibir.
¿Cómo funciona MCP junto a una API?
MCP y las APIs pueden formar parte de la misma arquitectura sin cumplir la misma función.
MCP puede actuar como una capa de integración
Una API puede proporcionar la comunicación con un servicio externo, mientras que un servidor MCP utiliza esa API para implementar una herramienta que una aplicación de IA pueda descubrir y utilizar.
De esta forma, una arquitectura puede utilizar tecnologías que ya existen sin tener que transformar todos sus servicios internos en servidores MCP.
Aplicación de IA
↓
MCP Client
↓
MCP Server
↓
API
↓
Servicio externo
↓
Resultado
¿Por qué MCP es importante para los agentes de IA?
Los agentes necesitan herramientas para interactuar con el entorno y MCP proporciona una forma estandarizada de conectar determinadas capacidades externas.
Un agente puede recibir un objetivo y utilizar distintas herramientas durante el proceso. Por ejemplo, podría necesitar consultar datos, leer un archivo y después llamar a una API.
MCP no convierte automáticamente una aplicación en agente. En cambio, puede proporcionar la infraestructura de conexión necesaria para que la aplicación descubra y utilice herramientas externas compatibles.
MCP y agentes trabajan en capas diferentes
El agente representa la lógica orientada a una tarea o un objetivo, mientras que MCP define una interfaz de comunicación con determinadas capacidades externas.
Cómo funcionan los agentes de IA →¿Qué aspectos de seguridad hay que considerar?
Una herramienta conectada mediante MCP puede acceder a datos o realizar acciones, por lo que la arquitectura debe limitar cuidadosamente los permisos y accesos.
Permisos mínimos
Una herramienta debería disponer únicamente de los permisos que necesita para su función.
Credenciales protegidas
Las claves, tokens y secretos deben mantenerse fuera de instrucciones o configuraciones expuestas.
Validación
Los argumentos recibidos por una herramienta deben validarse antes de ejecutar operaciones sobre sistemas reales.
Datos necesarios
Conviene limitar la información expuesta al mínimo necesario para completar la tarea.
La seguridad depende de la implementación, el servidor, las credenciales, las autorizaciones y los sistemas que se encuentran detrás de la conexión.
¿Por qué algunos tutoriales de MCP se ven diferentes?
MCP continúa evolucionando y los materiales antiguos pueden describir flujos correspondientes a versiones anteriores.
| Tema | Arquitectura actual | Material antiguo |
|---|---|---|
| Descubrimiento | server/discover | Puede describir otros flujos de inicialización. |
| Transporte remoto | Streamable HTTP | Puede mostrar enfoques de transporte anteriores. |
| Ciclo de comunicación | Arquitectura actualizada. | Puede utilizar conceptos de versiones anteriores. |
Esto no significa que todo tutorial antiguo sea inútil. Significa que al implementar MCP conviene comprobar la revisión de la especificación y la versión del SDK utilizada.
La documentación oficial actual está organizada para la revisión 2026-07-28, por lo que las guías de programación deben contrastarse con esa versión antes de copiar código a un entorno de producción.
Documentación oficial para estudiar MCP
MCP es un protocolo activo. Para implementaciones técnicas conviene contrastar siempre los ejemplos con la especificación y los SDK correspondientes a la versión utilizada.
Preguntas frecuentes sobre cómo funciona MCP
Respuestas directas sobre la arquitectura, comunicación, herramientas y funcionamiento del Model Context Protocol.
MCP permite que una aplicación compatible se comunique con servidores que exponen capacidades externas. El Host utiliza clientes MCP para comunicarse con esos servidores y utilizar herramientas, recursos y prompts disponibles.
Es la aplicación anfitriona que coordina uno o varios clientes MCP y utiliza el contexto y las capacidades proporcionadas por los servidores conectados.
Es el componente que mantiene una conexión con un servidor MCP y obtiene de él contexto y capacidades para que el Host pueda utilizarlos.
Es un programa que implementa MCP y proporciona capacidades como herramientas, recursos y prompts para clientes compatibles.
El cliente puede solicitar la lista de herramientas mediante el método tools/list. La respuesta puede incluir el nombre, descripción y esquema de entrada de cada herramienta.
Una herramienta puede invocarse mediante tools/call. El cliente envía el nombre de la herramienta y los argumentos correspondientes, y el servidor procesa la operación.
MCP utiliza JSON-RPC 2.0 para estructurar solicitudes, respuestas y notificaciones entre clientes y servidores.
La especificación actual documenta stdio para comunicación entre procesos locales y Streamable HTTP para comunicación basada en HTTP. El transporte concreto depende de la arquitectura utilizada.
No. Una API puede seguir realizando la comunicación con un servicio externo mientras un servidor MCP proporciona una herramienta que adapta determinadas capacidades para una aplicación compatible.
Sí. MCP puede facilitar que una aplicación o agente utilice herramientas y fuentes de información externas. MCP no es el agente, sino una capa de comunicación estandarizada.
Sí. Un servidor MCP puede ejecutarse localmente y utilizar stdio para comunicarse con el proceso cliente correspondiente.
Sí. La especificación actual contempla Streamable HTTP para servidores MCP accesibles mediante HTTP.
Es el mecanismo de descubrimiento mediante el cual un cliente puede conocer las versiones compatibles, capacidades e identidad de un servidor en la arquitectura actual.
Porque existen implementaciones y tutoriales correspondientes a revisiones anteriores del protocolo. Al desarrollar una integración conviene verificar la versión de MCP y del SDK que se está utilizando.
MCP Server vs MCP Client
Ahora que conoces el flujo completo, el siguiente paso es separar en detalle las responsabilidades del MCP Server y del MCP Client para entender una implementación real.
Conecta MCP con otras áreas de Ciborg
MCP se entiende mejor cuando se relaciona con agentes de IA, programación y automatización.
MCP conecta la inteligencia artificial con herramientas y sistemas reales
Comprender Host, Client, Server, herramientas, recursos, descubrimiento y transporte permite entender cómo las aplicaciones de IA pueden trabajar con capacidades que están fuera del modelo.
Explorar agentes de IA →