Arquitectura MCP: ¿Cómo funciona?
Para construir herramientas efectivas, primero debemos entender cómo viajan los datos entre tu editor de código y tus fuentes de información.
MCP no es una herramienta mágica; es un protocolo cliente-servidor estándar (basado en JSON-RPC) que define reglas claras de comunicación.
Diagrama de conexión
Sección titulada «Diagrama de conexión»graph LR
subgraph "Tu entorno local"
Host["Host Application<br>(VS Code / Cursor / Antigravity)"]
Client["MCP Client<br>(Integrado en el Host)"]
end
subgraph "Tu Infraestructura"
Server["MCP Server<br>(Node.js / Python)"]
Data[("Base de Datos / Logs / APIs")]
end
Client <== "Protocolo MCP (JSON)" ==> Server
Server --- Data
style Host fill:#e1f5fe,stroke:#01579b
style Server fill:#fff3e0,stroke:#e65100
style Data fill:#f3e5f5,stroke:#4a148c
Los 3 actores principales
Sección titulada «Los 3 actores principales»MCP Host (El Anfitrión):
Sección titulada «MCP Host (El Anfitrión):»Es la aplicación donde interactúas con la IA.
- Ejemplos: VS Code, Cursor, Claude Desktop, Antigravity.
- Rol: Provee la interfaz de chat y gestiona la conexión.
MCP Client (El Cliente):
Sección titulada «MCP Client (El Cliente):»Vive dentro del Host.
- Rol: Mantiene la conexión “1 a 1” con los servidores. Traduce tus preguntas en lenguaje natural a llamadas técnicas del protocolo.
MCP Server (El Servidor):
Sección titulada «MCP Server (El Servidor):»Esto es lo que tú construyes.
- Rol: Es un adaptador ligero que expone tus datos específicos de una forma que la IA puede entender.
Las 3 primitivas de MCP
Sección titulada «Las 3 primitivas de MCP»Cuando creas un servidor, puedes exponer tres tipos de capacidades a la IA. Entender esto es vital para el diseño de agentes.
Resources (Recursos)
Sección titulada «Resources (Recursos)»Son datos pasivos que la IA puede leer. Piensa en ellos como “archivos virtuales”.
- Función: Dar contexto.
- Ejemplos:
- El contenido de un archivo de logs (logs/error.log).
- El esquema de una base de datos.
- La documentación interna de tu API.
- Cuándo usarlos: Cuando quieres que la IA “sepa” algo antes de responder.
Tools (Herramientas)
Sección titulada «Tools (Herramientas)»Son funciones ejecutables. La IA puede invocarlas para realizar acciones o cálculos.
- Función: Actuar o recuperar datos dinámicos.
- Ejemplos:
- consultar_clima(ciudad)
- reiniciar_servidor()
- crear_ticket_jira(titulo, descripcion)
- Cuándo usarlas: Cuando necesitas que la IA haga algo en el mundo real o busque información que cambia constantemente.
Prompts (Plantillas)
Sección titulada «Prompts (Plantillas)»Son maneras predefinidas de usar el servidor.
- Función: Reutilizar flujos de trabajo.
- Ejemplo: Un comando /debug que automáticamente carga los últimos logs de error y le pide a la IA que los analice.