⏱️ Lectura: 12 min
Si alguna vez has usado un asistente de IA y te has preguntado por qué no puede leer tu correo, buscar en tu base de datos o usar la herramienta corporativa de tu empresa, la respuesta tiene nombre: falta un puente. Durante años, cada integración entre un modelo de IA y una fuente de datos externa fue un desarrollo a medida, frágil y costoso. Eso cambió con la aparición del Model Context Protocol, un estándar abierto que propone hacer con la IA lo que USB hizo con los periféricos: que cualquier modelo pueda conectarse a cualquier herramienta con el mismo cable universal.
📑 En este artículo
En esta guía vamos a desmenuzar el Model Context Protocol desde cero. No importa si eres desarrollador senior o apenas entiendes qué es una API: al terminar este artículo vas a saber qué problema resuelve MCP, cómo funciona por dentro, cómo escribir tu propio servidor y por qué en 2026 se está convirtiendo rápidamente en la capa estándar sobre la que se construyen los agentes de IA modernos.
Qué es el Model Context Protocol
El Model Context Protocol (MCP) es un estándar abierto creado por Anthropic y liberado en noviembre de 2024. Su propósito es simple: definir un lenguaje común para que las aplicaciones de IA, como Claude, ChatGPT, editores de código o agentes autónomos, puedan descubrir y usar herramientas externas, archivos y fuentes de datos sin necesidad de integraciones personalizadas para cada caso.
Antes de MCP, si querías que un modelo de lenguaje consultara tu base de datos PostgreSQL, tu Jira, tu Google Drive y tu sistema interno de tickets, necesitabas escribir cuatro integraciones distintas, cada una con su propia lógica de autenticación, formato de mensajes y manejo de errores. Y si el siguiente modelo que usabas venía de otro proveedor, tocaba reescribir todo. MCP rompe ese círculo vicioso al estandarizar la conversación entre el modelo (el cliente) y las herramientas (los servidores).
La analogía más útil es pensar en MCP como el puerto USB de la inteligencia artificial. Antes de USB, cada dispositivo tenía su propio conector: el teclado, la impresora, el escáner, cada uno con su cable y su driver. USB unificó todo detrás de un conector común. MCP hace lo mismo con el universo de herramientas que un modelo puede usar: servidor de archivos, base de datos, servicio web, CRM, cualquier cosa que hable MCP puede conectarse al instante a cualquier cliente MCP.
💭 Clave: MCP no es un modelo ni un framework de agentes. Es el protocolo de mensajería que va debajo, igual que HTTP va debajo de la web. Tu agente sigue siendo tuyo; MCP solo define cómo habla con el mundo exterior.
Cómo funciona MCP por dentro
La arquitectura del Model Context Protocol tiene tres piezas claramente separadas: el host, el cliente y el servidor. Es importante entender el rol de cada una porque definen todo el modelo mental del protocolo.
Host, cliente y servidor
El host es la aplicación con la que interactúa el usuario final: Claude Desktop, un IDE con integración de IA, un agente autónomo corriendo en un servidor. El host es responsable de orquestar al modelo de lenguaje y de gestionar las conversaciones.
El cliente MCP vive dentro del host y mantiene una conexión uno-a-uno con cada servidor disponible. Piensa en él como una pestaña del navegador: el host puede tener muchos clientes abiertos a la vez, cada uno conectado a un servidor distinto, y gestiona el ciclo de vida de cada conexión.
El servidor MCP es el programa que expone capacidades hacia fuera. Un servidor puede exponer tres tipos de cosas: tools (funciones que el modelo puede invocar, como “crear issue en Jira”), resources (datos legibles, como el contenido de un archivo) y prompts (plantillas reutilizables que el usuario puede invocar con un comando). El servidor es agnóstico al modelo: no sabe si lo está consultando Claude, GPT-4 o Llama.
El transporte JSON-RPC 2.0
Por debajo, toda la conversación entre cliente y servidor usa JSON-RPC 2.0, un formato de mensajes extremadamente sencillo donde cada petición es un JSON con method, params e id. El transporte puede ser stdio (entrada y salida estándar, ideal para servidores locales) o HTTP con Server-Sent Events (ideal para servidores remotos o multiusuario).
El ciclo de vida típico sigue siempre los mismos cuatro pasos: el cliente se conecta al servidor y envía initialize anunciando qué versión del protocolo habla y qué capacidades soporta; el servidor responde con su propia declaración de capacidades; después el cliente puede pedir la lista de tools disponibles con tools/list; y finalmente invoca una herramienta concreta con tools/call, pasando los argumentos y recibiendo el resultado.
Descubrimiento dinámico
Una de las decisiones de diseño más potentes del Model Context Protocol es que el descubrimiento de capacidades es dinámico. El cliente no necesita saber de antemano qué herramientas expone el servidor: las pregunta al conectarse. Esto significa que puedes añadir, quitar o actualizar herramientas en el servidor sin tocar el cliente ni el modelo, y cualquier host compatible con MCP las verá aparecer automáticamente.
Ejemplo práctico: tu primer servidor MCP
La mejor forma de entender MCP es escribir un servidor mínimo. El SDK oficial está disponible en Python, TypeScript, Kotlin, Swift y varios lenguajes más. Veamos un ejemplo en Python que expone una herramienta para consultar el clima de una ciudad.
Primero instalas el SDK:
pip install mcp
Después defines el servidor:
from mcp.server.fastmcp import FastMCP
import httpx
mcp = FastMCP("clima-server")
@mcp.tool()
async def obtener_clima(ciudad: str) -> str:
"""Devuelve el clima actual de una ciudad usando wttr.in."""
async with httpx.AsyncClient() as client:
r = await client.get(f"https://wttr.in/{ciudad}?format=3")
return r.text.strip()
@mcp.resource("info://servidor")
def info_servidor() -> str:
return "Servidor MCP de ejemplo — expone consulta de clima."
if __name__ == "__main__":
mcp.run(transport="stdio")
Eso es literalmente todo. Con esas veinte líneas ya tienes un servidor MCP funcional: expone una herramienta llamada obtener_clima y un recurso con metadatos. Cualquier cliente compatible con MCP puede descubrirlo, invocarlo y mostrar el resultado al usuario.
Para conectarlo a Claude Desktop, basta con añadirlo al archivo de configuración:
{
"mcpServers": {
"clima": {
"command": "python",
"args": ["/ruta/a/clima_server.py"]
}
}
}
Al reiniciar Claude Desktop aparece un icono nuevo: la herramienta está lista. Cuando le preguntes “¿qué tiempo hace en San Salvador?”, el modelo decidirá por su cuenta invocar la tool, leer el resultado y responderte en lenguaje natural.
💡 Tip: Empieza siempre con transporte stdio para servidores locales y solo pasa a HTTP+SSE cuando necesites servir a múltiples usuarios o desplegar en la nube. La depuración local con stdio es mucho más sencilla.
Flujo de una invocación
Para entender qué sucede cuando el usuario hace una pregunta, ayuda visualizar el flujo completo:
sequenceDiagram
participant U as Usuario
participant H as Host + Modelo
participant C as Cliente MCP
participant S as Servidor MCP
U->>H: ¿Clima en San Salvador?
H->>C: tools/list
C->>S: tools/list
S-->>C: [obtener_clima]
H->>C: tools/call obtener_clima
C->>S: tools/call
S-->>C: "San Salvador: 28°C"
C-->>H: resultado
H-->>U: Respuesta natural
Nota cómo el modelo nunca habla directamente con la API del clima: todo pasa por el cliente MCP, que a su vez habla con el servidor. Esto tiene implicaciones de seguridad enormes, porque toda herramienta invocada queda registrada y puede ser auditada o interceptada por el host.
Casos de uso reales
En 2026 el ecosistema del Model Context Protocol ha explotado. Hay cientos de servidores públicos y miles de empresas desplegándolo internamente. Estos son los patrones más comunes.
IDEs y editores de código
Los editores con IA integrada usan MCP para darle al modelo contexto sobre el repositorio: qué archivos existen, cuál es la estructura del proyecto, qué cambios hay sin commitear. Zed, Cursor y varios forks de VSCode exponen servidores MCP que permiten al agente leer, editar y ejecutar código con permisos granulares. Esto reemplaza plugins ad-hoc que antes cada editor tenía que mantener.
Agentes corporativos
Las empresas usan MCP como la capa de integración entre sus agentes internos y el resto del stack: CRM, ERP, sistemas de tickets, data warehouses. Un agente de soporte puede conectarse simultáneamente a servidores MCP de Zendesk, Salesforce y el data lake interno, y todo el equipo de IA se enfoca en la lógica del agente, no en cada integración.
Marketplaces de herramientas
Con el lanzamiento del Claude Marketplace en 2026, los servidores MCP se están convirtiendo en un formato distribuible como los paquetes de npm o PyPI. Un desarrollador publica un servidor que expone, por ejemplo, herramientas para interactuar con Stripe, y cualquier usuario puede instalarlo en su cliente y darle al modelo acceso a su cuenta.
Acceso a datos locales
Servidores MCP como filesystem o sqlite permiten que el modelo interactúe con archivos y bases de datos locales sin necesidad de subirlos a la nube. Esto ha sido especialmente relevante en industrias reguladas como salud y finanzas, donde los datos no pueden salir de la infraestructura del cliente.
Ventajas y desventajas
Ventajas
La primera ventaja del Model Context Protocol es obvia: elimina el trabajo repetitivo de escribir integraciones N×M entre N modelos y M herramientas, reduciéndolo a N+M. Cada modelo implementa MCP una vez, cada herramienta implementa MCP una vez, y todo conecta con todo.
La segunda es portabilidad: si mañana cambias de proveedor de modelo, tus servidores MCP siguen funcionando. Tu inversión en integraciones está protegida frente al vendor lock-in.
La tercera es seguridad. Como toda invocación pasa por el host, este puede pedir confirmación al usuario antes de ejecutar acciones destructivas, registrar un log de auditoría completo y aplicar políticas de acceso de forma centralizada.
Desventajas
MCP no es perfecto. La especificación todavía está evolucionando, y aunque la versión 1.0 es estable, hay áreas como autenticación, autorización granular y streaming de resultados grandes donde la comunidad sigue iterando.
Además, el protocolo añade una capa de indirección que implica latencia: cada llamada a una herramienta involucra dos saltos JSON-RPC. Para la mayoría de casos es imperceptible, pero en pipelines de alta frecuencia puede importar.
⚠️ Ojo: No todos los servidores MCP son seguros por defecto. Antes de instalar uno de la comunidad, revisa el código: un servidor malicioso puede exfiltrar datos sensibles aprovechando la confianza del modelo. Trata los servidores MCP como tratarías extensiones de navegador.
📖 Resumen en Telegram: Ver resumen
Preguntas frecuentes
¿MCP reemplaza a las APIs REST tradicionales?
No. MCP es una capa por encima de tus APIs existentes. Tu servidor MCP probablemente hará llamadas HTTP a APIs REST por debajo. Lo que MCP estandariza es cómo el modelo descubre y usa esas capacidades, no cómo tus sistemas se comunican entre sí.
¿Necesito usar Claude para usar MCP?
No. Aunque MCP fue creado por Anthropic, es un estándar abierto con implementaciones para múltiples modelos y hosts. Puedes usar MCP con modelos de OpenAI, Google, modelos locales vía Ollama, o cualquier host compatible.
¿Qué lenguajes soportan oficialmente MCP?
Hay SDKs oficiales en Python, TypeScript, Kotlin, Swift, C# y Java. La comunidad mantiene implementaciones en Go, Rust y otros lenguajes. Como el protocolo es JSON-RPC 2.0, puedes implementarlo en cualquier lenguaje que pueda leer y escribir JSON.
¿Es MCP seguro para datos sensibles?
Puede serlo, pero depende de cómo lo despliegues. MCP permite ejecutar servidores completamente locales que nunca exponen datos a la nube. Para servidores remotos, usa siempre HTTPS y autentica las conexiones con tokens o mTLS.
¿En qué se diferencia MCP de function calling tradicional?
Function calling es específico de cada proveedor y te obliga a declarar las funciones en cada conversación. MCP estandariza el descubrimiento y la invocación, permite capacidades además de funciones (recursos, prompts) y funciona igual independientemente del modelo.
¿Cómo empiezo si nunca he escrito un servidor MCP?
Instala el SDK de Python o TypeScript, clona uno de los servidores de ejemplo del repositorio oficial, modifícalo para tu caso de uso y conéctalo a Claude Desktop. En menos de una hora puedes tener tu primer servidor funcionando contra un modelo real.
Referencias
- modelcontextprotocol.io — Sitio oficial del protocolo con especificación completa y tutoriales.
- github.com/modelcontextprotocol — Repositorio oficial con SDKs, servidores de ejemplo y spec JSON Schema.
- anthropic.com/news/model-context-protocol — Anuncio original del protocolo por Anthropic.
- docs.anthropic.com — Documentación oficial de Claude, con guías de integración MCP para Claude Desktop y la API.
📱 ¿Te gusta este contenido? Únete a nuestro canal de Telegram @programacion donde publicamos a diario lo más relevante de tecnología, IA y desarrollo. Resúmenes rápidos, contenido fresco todos los días.
0 Comentarios