Qué es MCP (Model Context Protocol), para qué sirve y cómo funciona
MCP explicado fácil: qué es el Model Context Protocol, para qué sirve, cómo funciona y por dónde empezar si quieres crear tu propio servidor.
Por Andrés León Bohórquez Actualizado el
Datos a 15 de octubre de 2026 · especificación MCP 2026-07-28
MCP (Model Context Protocol) es un protocolo abierto que permite a una aplicación de IA, como Claude o ChatGPT, conectarse con otros programas para consultar sus datos y hacer cosas en ellos. Entender qué es MCP aclara cómo un asistente llega a leer tus archivos o a revisar las issues (incidencias) de un repositorio de GitHub. Sin algo así, solo podría contestar con lo que ya sabe.
Pongamos que le pides a Claude Desktop que mire los PDF de este mes en tu carpeta de Descargas y te diga de qué trata cada uno. Claude no ve tu disco, pero si le has conectado un servidor MCP de archivos, puede hacerlo. Claude pide usar las herramientas que ofrece el servidor (listar carpetas, leer archivos), la aplicación te pide permiso y el servidor hace el trabajo. Con un repositorio de GitHub o con la base de datos de pedidos de tu empresa, el mecanismo es el mismo.
Todo lo que sigue describe la versión vigente de la especificación, la 2026-07-28, publicada el 28 de julio de 2026.
Qué significa MCP: el Model Context Protocol en español
Un protocolo es un acuerdo sobre cómo se hablan dos programas: qué mensajes se envían, con qué formato y en qué orden. HTTP es lo que permite que cualquier navegador abra cualquier web, y MCP cumple un papel parecido entre las aplicaciones de IA y los sistemas que quieren usar.
En español sería «protocolo de contexto del modelo». El contexto es lo que el modelo tiene delante cuando responde, es decir, tu pregunta, la conversación y lo que le llega de fuera. MCP fija cómo entra esa última parte.
Que sea abierto significa que la especificación es pública y cualquiera puede implementarla. Por eso el mismo servidor MCP puede usarse desde Claude, ChatGPT, Cursor o VS Code sin escribir una integración para cada uno.
Para qué sirve MCP: ejemplos reales
Sirve para que un modelo lea datos y ejecute acciones en sistemas que no conoce, siempre con la misma interfaz.
Claude con tus archivos. La guía oficial de MCP para Claude Desktop pone como ejemplo Filesystem, uno de los servidores de referencia del proyecto. Tú decides qué carpetas puede tocar y Claude pide tu aprobación antes de cada acción. La misma guía avisa de que el servidor se ejecuta con los permisos de tu usuario, así que puede hacer con esos archivos lo mismo que harías tú a mano.
Claude con GitHub. GitHub mantiene su propio servidor, github-mcp-server, que da acceso a repositorios, issues, pull requests, Actions y alertas de seguridad, entre otras cosas. Puedes usar la versión que aloja GitHub en https://api.githubcopilot.com/mcp/ o ejecutarlo en tu equipo con Docker o con un binario. Con él, el asistente puede resumirte las issues abiertas o revisar un pull request.
Claude con tus herramientas de trabajo. Notion, Atlassian (Jira, Confluence y otros), Linear, Stripe, Supabase, Sentry y Cloudflare publican servidores oficiales, y los revisamos uno a uno en los mejores servidores MCP. Si buscas uno para otra herramienta, comprueba antes si lo publica el fabricante. Al buscar salen muchos de terceros con nombres casi iguales.
En una empresa. En el curso usamos Nortia Logística, una empresa ficticia. Un cliente pregunta a soporte por su pedido PED-2026-004812, y los datos están repartidos entre el envío en PostgreSQL, la factura en una API interna y el historial en el sistema de tickets. Sin un estándar, el chat interno, el asistente del IDE y un agente de operaciones necesitarían cada uno su propia integración con cada sistema.
Con MCP, el equipo de pedidos publica una sola vez el servidor nortia-pedidos, con una herramienta buscar_pedido que recibe un pedido_id. Cualquier aplicación que hable MCP puede descubrirla y llamarla. Al servidor le da igual qué modelo hay al otro lado, y la aplicación no necesita conocer la base de datos.
Cómo funciona MCP, explicado fácil
Intervienen tres piezas. La primera es la aplicación que usas (Claude Desktop, ChatGPT, tu editor). La segunda es el cliente MCP, el conector que esa aplicación abre hacia cada servicio. La tercera es el servidor MCP, el programa que conoce ese servicio por dentro. Cuando tu pregunta necesita datos de fuera, pasa esto:
- La aplicación pregunta al servidor qué herramientas ofrece y recibe una lista con el nombre y la descripción de cada una.
- El modelo lee esas descripciones y propone usar una, con sus argumentos.
- La aplicación decide si la llamada se hace, y en las operaciones delicadas debería pedirte confirmación.
- El servidor ejecuta la acción y devuelve el resultado.
- El modelo usa ese resultado para responderte.
El modelo nunca toca el sistema. Solo propone, y es la aplicación la que decide, así que puede poner permisos y confirmaciones en medio.
El esquema aplica esos pasos al pedido de soporte de Nortia, con la herramienta buscar_pedido del servidor nortia-pedidos.
sequenceDiagram participant H as Host (consola de soporte) participant C as Cliente MCP participant S as nortia-pedidos participant D as Base de datos de pedidos C->>S: tools/list S-->>C: buscar_pedido con name, description e inputSchema Note over H: El modelo propone buscar_pedido con pedido_id PED-2026-004812 H->>C: El host decide hacer la llamada C->>S: tools/call buscar_pedido S->>D: Consulta el pedido D-->>S: Datos del pedido S-->>C: Resultado C-->>H: Resultado para el host Note over H: El modelo usa el resultado para responder
Host, cliente y servidor, con más detalle
En la especificación, la aplicación es el host. Es la que el usuario tiene delante y la que contiene o invoca al modelo: un chat de escritorio, un IDE o la consola de soporte de Nortia. Dentro del host, cada cliente MCP habla el protocolo con un servidor concreto, así que un host que usa tres servidores mantiene tres clientes. Nortia tiene un servidor por sistema: nortia-pedidos, nortia-facturacion, nortia-soporte y nortia-almacen.
Los mensajes usan JSON-RPC 2.0, un formato estándar de llamadas a métodos remotos escritas en JSON. El cliente envía peticiones y notificaciones, y el servidor responde a cada petición (puede añadir notificaciones ligadas a ella), pero nunca inicia peticiones por su cuenta. Tampoco hay apertura de sesión, porque cada petición lleva en _meta la versión del protocolo y las capacidades del cliente. Así pregunta un cliente a un servidor qué versiones y capacidades tiene:
{
"jsonrpc": "2.0",
"id": "discover-1",
"method": "server/discover",
"params": {
"_meta": {
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
"io.modelcontextprotocol/clientInfo": {
"name": "ExampleClient",
"version": "1.0.0"
},
"io.modelcontextprotocol/clientCapabilities": {}
}
}
}
Fuente: ejemplo literal de la especificación de server/discover. Todo servidor debe implementar ese método, pero el cliente puede llamarlo o no. Los términos que se te escapen están en el glosario de MCP.
Los dos transportes: stdio y Streamable HTTP
Un transporte es el canal por el que viajan los mensajes, y MCP define dos con la misma semántica. Los servidores locales usan stdio: el cliente lanza el servidor como subproceso y los dos se comunican por la entrada y la salida estándar, con un mensaje JSON-RPC por línea. El servidor no puede escribir en stdout nada que no sea un mensaje MCP, así que sus logs van a stderr.
Los remotos, como https://mcp.nortia.example/pedidos/mcp, usan Streamable HTTP. El servidor publica un único endpoint y cada mensaje del cliente es un POST nuevo. La respuesta llega como objeto JSON o como stream SSE (eventos que el servidor envía por una conexión HTTP abierta), y el cliente debe aceptar las dos formas. El antiguo HTTP+SSE está deprecado desde la revisión 2025-03-26.
La lección Arquitectura recorre los dos transportes con mensajes completos.
Las tres primitivas: tools, resources y prompts
Un servidor MCP ofrece tres tipos de cosas, y en cada una decide alguien distinto.
Tools (herramientas). Son acciones. Cada tool tiene un name, una description que orienta al modelo y un inputSchema en JSON Schema, el esquema que describe sus argumentos. El cliente las lista con tools/list y las ejecuta con tools/call. El modelo elige cuál usar, el host decide si la llamada se hace y la especificación pide que siempre haya una persona capaz de denegarla.
Resources (recursos). Son datos identificados por una URI, como pedidos://pedido/{pedidoId} en Nortia. El cliente los lista con resources/list, los lee con resources/read y, cuando la URI tiene variables, obtiene las plantillas con resources/templates/list. Aquí es la aplicación la que elige qué lee y cómo lo incorpora al contexto.
Prompts. Son plantillas con argumentos de texto que el servidor convierte, con prompts/get, en mensajes con rol user o assistant. Están pensadas para que las elija el usuario. En Nortia, el equipo de soporte mantiene así en un solo sitio su plantilla de respuesta a reclamaciones.
El servidor declara cuáles ofrece en server/discover, y cada una tiene su lección: Recursos, Herramientas y Prompts.
Si programas y quieres pasar del esquema al recorrido práctico, la lección 01 parte del mismo pedido de Nortia, PED-2026-004812. Allí ves qué viaja entre cliente y servidor cuando el modelo usa buscar_pedido. Puedes ver la lección 01 del curso y seguir el caso de Nortia desde el principio.
Cómo empezar a usar MCP sin programar
Para usar un servidor que ya existe no hace falta escribir código. Los pasos dependen de la aplicación:
- claude.ai. Los servidores remotos se añaden como conector personalizado en Customize > Connectors, con «+ Add» y después «Add custom connector», pegando la URL del servidor. Con la misma cuenta lo tienes también en Claude Desktop y en el móvil. Está disponible en los planes Free, Pro, Max, Team y Enterprise, aunque Free admite un solo conector personalizado. En Team y Enterprise lo añade un Owner desde Organization settings > Connectors.
- Claude Desktop, servidores locales. Pueden llegar como extensión de escritorio, un archivo
.mcpbque se instala con doble clic, y no necesitas instalar Node.js porque Claude Desktop trae el suyo. La otra vía es editarclaude_desktop_config.jsondesde Settings > Developer > Edit Config y reiniciar la aplicación. - ChatGPT. Activas el modo desarrollador en Settings > Security and login > Developer mode y luego añades la URL del servidor, que debe hablar Streamable HTTP.
- Cursor. Los servidores se declaran en
.cursor/mcp.jsonpara un proyecto o en~/.cursor/mcp.jsonpara todos. El paso a paso está en Servidor MCP en Cursor.
Importante: un conector remoto de claude.ai tiene que ser accesible desde internet, porque quien se conecta a él es la infraestructura de Anthropic. Si el servidor solo existe en tu red local, no le sirve sin pasos extra. Los pasos de cada vía en Claude, con los errores típicos, están en Conectar un servidor MCP a Claude.
Si no programas, también puedes tener un servidor propio sin escribirlo. Zapier MCP expone acciones de las integraciones de Zapier. El nodo MCP Server Trigger convierte un flujo de n8n en servidor MCP. Make ofrece un servidor que ejecuta tus escenarios. La lección MCP sin programar explica estas vías y dónde se quedan cortas.
Cómo crear tu propio servidor MCP
Si programas, un servidor MCP básico es un programa pequeño, y los SDK oficiales (las librerías que se ocupan de hablar el protocolo) de TypeScript, Python, Go y C# ya soportan la versión 2026-07-28. Con un SDK declaras cada herramienta con su nombre, su descripción y sus argumentos, y la librería hace el resto. Tenemos tutoriales completos en Python y en TypeScript, y una guía para depurar un servidor MCP cuando algo no responde como esperas.
Si un tutorial instala @modelcontextprotocol/server-github, server-postgres, server-puppeteer o server-slack, está desfasado, porque esos servidores de referencia están archivados. Los siete que siguen activos, Filesystem entre ellos, son ejemplos educativos según su propio repositorio, no servidores para producción.
Qué cambió con la especificación 2026-07-28
La versión 2026-07-28 hizo MCP sin estado: el servidor ya no guarda una sesión entre una petición y la siguiente. Parte del ecosistema la llama “MCP 2.0”, aunque es un apodo y no un número de versión oficial. Desaparecen el handshake inicial, el intercambio de presentación entre cliente y servidor (initialize y notifications/initialized) y las sesiones con la cabecera Mcp-Session-Id, y cada petición lleva su versión y las capacidades del cliente. A cambio llega server/discover, que todo servidor debe implementar para anunciar versiones, capacidades e identidad.
El servidor ya no hace peticiones propias. Si le falta información, devuelve un resultado input_required y el cliente reintenta la petición original con las respuestas. Tasks pasa a ser una extensión oficial, y Roots, Sampling y Logging quedan deprecados, aunque seguirán en la especificación al menos doce meses. Lo contamos con detalle en MCP 2026-07-28: el protocolo pasa a ser sin estado, y los términos nuevos están en el glosario de MCP.
La próxima versión todavía no tiene fecha aprobada. Una propuesta en borrador, SEP-3398, plantea publicarla el 30 de marzo de 2027, y la analizamos en la próxima versión de MCP.
¿MCP es de Anthropic?
Lo impulsó Anthropic, que en el anuncio de Claude Marketplace, del 23 de septiembre de 2026, lo cuenta entre «the open standards pioneered by Anthropic». Pero hoy no lo controla una sola empresa.
MCP está bajo la Agentic AI Foundation (AAIF), un fondo dirigido de la Linux Foundation que lo cita como uno de sus «founding projects». En esa lista también están A2A, AGENTS.md, goose, agentgateway y Agent Router. El 13 de agosto de 2026, la AAIF anunció que llegaba a 247 miembros.
A2A (Agent2Agent) entró en la AAIF el 17 de agosto de 2026. MCP conecta un agente con herramientas y datos, mientras que A2A conecta agentes entre sí. Los comparamos en A2A frente a MCP.
¿Qué aplicaciones de IA usan MCP?
Claude usa MCP en claude.ai, Claude Desktop, la app móvil, Cowork y Claude Code, todos con la misma infraestructura de conectores. Anthropic abrió Claude Marketplace el 23 de septiembre de 2026 con «more than 2,000» conectores y plugins, y dos días después escribió que «Claude supports the latest MCP spec, commonly referred to as MCP 2.0». De los clientes que hemos revisado, Claude Code es el único que documenta el soporte de 2026-07-28.
En OpenAI, ChatGPT admite desde el 21 de agosto de 2026 dos piezas de la autorización de la versión 2026-07-28 al conectarse a servidores MCP. El 10 de septiembre, OpenAI lanzó en beta pública la Agents API, que también permite conectar servidores MCP. Según el blog de la AAIF, con datos de OpenAI, las llamadas a herramientas MCP en ChatGPT en agosto multiplicaron por 98 las de enero.
En Microsoft 365 Copilot, los federated Copilot connectors, que acceden a datos de terceros mediante MCP, pasaron a disponibilidad general el 23 de septiembre de 2026. En Google Cloud lo hizo el servidor MCP remoto de IAM (gestión de identidades y accesos), el 10 de septiembre. Cursor, VS Code con GitHub Copilot y Gemini CLI admiten servidores MCP por stdio y por HTTP, aunque no indican qué revisión del protocolo hablan.
El 14 de septiembre de 2026, la Linux Foundation cifró las descargas mensuales de los SDK de primer nivel en «approaching 500 million». Ese día lanzó también la primera certificación oficial, la certificación MCPA.
MCP frente a una API REST y frente al function calling
MCP no sustituye a tu API REST ni al function calling de los modelos, sino que se sitúa entre los dos. Con function calling, describes una función en la propia petición a la API del modelo y el modelo propone llamarla. MCP estandariza de dónde salen esas funciones y cómo se descubren y se ejecutan, así que la misma herramienta sirve a cualquier host compatible. La API REST sigue detrás: nortia-facturacion llama a la API interna, pero expone unas pocas tools orientadas a tareas en vez de copiar cada endpoint.
La comparación completa, con una tabla y los casos en que no conviene usar MCP, está en MCP frente a API REST y function calling, y la lección Introducción a MCP la aplica al caso de Nortia.
Seguridad: lo básico que hay que saber
Conectar un servidor MCP es dar a una aplicación de IA acceso a algo tuyo. La guía oficial de seguridad para servidores locales lo resume en una regla: trata un servidor local de terceros como código no fiable con exactamente los privilegios que le das, y dale los menos posibles. En la práctica:
- Instala solo servidores de quien sepas quién es, comprueba el nombre exacto del paquete y fija la versión. Si el fabricante ofrece una versión remota, la guía recomienda preferirla.
- Un servidor Streamable HTTP tiene que validar la cabecera
Origin. Si no lo hace, una web maliciosa abierta en tu navegador puede llegar a tu servidor local con DNS rebinding, un truco de DNS con el que una web hace que tu navegador hable con tu equipo. Entre agosto y octubre de 2026 este fallo apareció en al menos cinco proyectos, y enmysql-mcp-serverpermitía ejecutar SQL sin autenticación (CVSS 10, la gravedad máxima). - Desconfía de lo que lee el modelo. La descripción de una tool puede esconder instrucciones que el modelo lee y tú no ves, lo que OWASP llama tool poisoning.
- Deja que una persona confirme las acciones con efecto, como emitir un abono.
Los avisos de estos meses, con una lista de comprobación, están en Seguridad en servidores MCP.
Por dónde seguir: el curso, gratis con una cuenta
Si quieres pasar de saber qué es MCP a construir servidores, el nivel Básico del curso es gratis con registro. Son catorce lecciones sobre la versión 2026-07-28, con el caso Nortia de principio a fin, en este orden:
- Introducción a MCP: qué problema resuelve.
- Arquitectura: host, cliente y servidor; JSON-RPC y los dos transportes.
- Cómo viaja una petición: el protocolo sin estado, mensaje a mensaje.
- Recursos: datos direccionables por URI, caché y suscripciones.
- Herramientas: acciones que el modelo puede invocar, con esquemas y errores.
- Prompts: plantillas gobernadas en el servidor que invoca el usuario.
- Interacción con el usuario y extensiones: elicitation, Tasks y extensiones.
- Ejemplo práctico: una incidencia resuelta con tres servidores, mensaje a mensaje.
- Servidor en TypeScript:
nortia-pedidoscon el SDK oficial v2. - Servidor en Python:
nortia-almacencon el SDK oficial de Python. - Agentes + MCP: un agente con Claude que orquesta varios servidores.
- MCP sin programar: conectar y generar servidores sin escribirlos.
- Beneficios y desafíos: qué gana y qué asume una empresa al adoptar MCP.
- Estado actual y evolución: deprecaciones y cómo seguir los cambios.
Cada enlace lleva a la ficha pública de la lección, y con una cuenta la lees completa. Los niveles Avanzado y Experto llevan después los servidores de Nortia a producción. El temario completo está en /aprende.
Para tener a mano los mensajes, los códigos de error y las cabeceras mientras construyes, descarga gratis la chuleta MCP 2026-07-28.
Aprende esto en el curso
- Básico Gratis Introducción a MCP · Qué es MCP, qué problema resuelve y el caso que recorre el curso
- Básico Gratis Arquitectura · Host, cliente y servidor; JSON-RPC y los dos transportes
- Básico Gratis Herramientas · Acciones que el modelo puede invocar, con esquemas y errores
- Básico Gratis MCP sin programar · Conectar y generar servidores sin escribirlos, y sus límites
La lección 1 la puedes leer ya, sin registro. Las otras 13 del Básico son gratis con una cuenta.
Empieza gratis Ir a la lecciónFuentes
- Especificación MCP 2026-07-28: visión general del protocolo
- Especificación MCP 2026-07-28: transportes
- Especificación MCP 2026-07-28: server/discover
- Especificación MCP 2026-07-28: tools
- Especificación MCP 2026-07-28: resources
- Especificación MCP 2026-07-28: changelog
- Especificación MCP 2026-07-28: funciones deprecadas
- The 2026-07-28 Specification (blog oficial de MCP) (2026-07-28)
- SEP-3398: Release Cycle Updates (2026-09-28)
- Connect to local MCP servers (guía oficial de MCP)
- Getting started with custom connectors using remote MCP (soporte de Claude)
- MCP Bundles (.mcpb) en Claude Desktop
- Connect from ChatGPT (OpenAI)
- GitHub MCP Server (2026-10-07)
- Servidores de referencia de MCP
- Zapier MCP
- n8n: nodo MCP Server Trigger
- Make MCP Server
- Security Best Practices (MCP 2026-07-28)
- Local Server Security (MCP 2026-07-28)
- Agentic AI Foundation welcomes the Gates Foundation (2026-09-15)
- Agentic AI Foundation welcomes 57 new members (2026-08-13)
- A2A joins AAIF (2026-08-17)
- AAIF launches MCPA certification (2026-09-14)
- MCP usage surged as the protocol went stateless (AAIF) (2026-09-01)
- Claude Marketplace (2026-09-23)
- Build plugins for Claude (2026-09-25)
- Claude Code: MCP
- OpenAI plugins changelog (2026-08-21)
- OpenAI changelog (Agents API) (2026-09-10)
- OpenAI: MCP y sus riesgos
- Microsoft 365 Copilot release notes (2026-09-23)
- IAM release notes (Google Cloud) (2026-09-10)
- GHSA-rqfv-2mw9-78g2 (mysql-mcp-server) (2026-09-11)