¿Qué es MCP en IA? Guía para principiantes
Respuesta rápida
MCP, el Model Context Protocol, es un protocolo abierto que permite que una aplicación de IA se conecte a herramientas y datos externos siguiendo unas reglas comunes, en lugar de crear una integración distinta para cada herramienta. Un servidor MCP expone herramientas, recursos y prompts, y un cliente como Claude o Cursor los usa cuando el usuario lo pide.
Lo Que Dominarás en Este Tutorial
- Entender qué es MCP y quiénes participan en el protocolo.
- Diferenciar MCP de una API normal sin confundirlos.
- Ver un ejemplo mínimo de servidor MCP en Python.
- Saber cuándo conviene usar MCP y cuándo no.
Qué es MCP, en una frase
MCP son las siglas de Model Context Protocol. En inteligencia artificial, MCP es un protocolo abierto, presentado por Anthropic, que estandariza cómo una aplicación de IA se conecta a fuentes de datos y herramientas externas. Piensa en ello como un enchufe estándar: en lugar de un cable distinto para cada aparato, cliente y servidor hablan el mismo protocolo.
Eso no significa que MCP haga magia. El modelo sigue sin saber nada que el servidor no le exponga, y el servidor solo expone lo que el desarrollador define de forma explícita. Esa es, precisamente, la ventaja: el control queda del lado del desarrollador, no del modelo.
Los tres actores del protocolo
En MCP participan tres piezas. El host es la aplicación que usa el modelo, por ejemplo un asistente de código o un chat. El cliente es la parte del host que habla MCP. Y el servidor es el programa que expone herramientas y datos. Un host puede conectarse a varios servidores a la vez, y cada servidor puede ofrecer cosas distintas.
La comunicación corre sobre JSON-RPC, un formato de mensajes ligero y ampliamente usado. No necesitas aprender un formato nuevo por cada herramienta: una vez que entiendes el patrón cliente-servidor de MCP, el resto es repetirlo.
Qué puede exponer un servidor MCP
Un servidor MCP puede exponer tres tipos de cosas. Las herramientas son acciones que el modelo puede pedir que se ejecuten, como buscar archivos o consultar una base de datos. Los recursos son datos que el modelo puede leer, como el contenido de un documento. Y los prompts son plantillas reutilizables que guían una tarea concreta.
En la práctica, la mayoría de los servidores que verás empiezan por herramientas. Es el caso más fácil de entender y de probar: defines una función, la expones como herramienta y compruebas que el cliente la llama con los argumentos correctos.
Diferencia entre una API y un MCP
Una API es la interfaz concreta de un servicio: sus endpoints, sus parámetros y su autenticación. Cada servicio tiene la suya, y hay que aprenderla. MCP no sustituye a esa API, la envuelve en un protocolo común: describe cómo se listan las herramientas, cómo se llaman y cómo se devuelven los resultados, para que un cliente pueda trabajar con muchos servidores sin aprender una interfaz nueva cada vez.
Dicho de otro modo: la API es el servicio concreto, MCP es el idioma común para ofrecer ese servicio a una aplicación de IA. Puedes tener un servidor MCP que, por dentro, llame a una API normal. Lo que cambia es cómo el cliente lo descubre y lo usa.
Un ejemplo mínimo en Python
Con FastMCP, un servidor mínimo puede ser una sola herramienta. Este ejemplo expone saludar, que recibe un nombre y devuelve un saludo. Es deliberadamente pequeño: sirve para comprobar que cliente y servidor se entienden antes de añadir datos reales.
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("demo")
@mcp.tool()
def saludar(nombre: str) -> str:
return f"Hola, {nombre}"
if __name__ == "__main__":
mcp.run()
Revisa siempre la documentación oficial de la versión que instales, porque la API de los SDK puede cambiar. El siguiente paso, después de que este ejemplo funcione, es añadir una segunda herramienta con datos reales, por ejemplo buscar archivos, y probarla con un prompt real antes de añadir más.
Cuándo conviene usar MCP y cuándo no
Conviene cuando tienes varias herramientas que quieres ofrecer a una aplicación de IA, cuando quieres reutilizar la misma integración en varios clientes, o cuando el conjunto de herramientas va a crecer. No conviene cuando solo necesitas una integración puntual y sencilla, cuando los datos son sensibles y aún no tienes claro el modelo de permisos, o cuando el problema se resuelve mejor con una simple llamada a una API desde tu propio código.
Dos reglas de seguridad que aplican siempre: expón solo lo que el servidor debe exponer, preferiblemente en solo lectura al principio, y nunca pongas contraseñas ni claves de API dentro del código del servidor. Las credenciales van en variables de entorno o en la configuración del cliente.
Cómo empezar en cuatro pasos
Primero, lee la guía paso a paso de MCP de este sitio y elige un cliente que ya uses. Segundo, construye un servidor local con una sola herramienta, como el ejemplo de arriba. Tercero, conéctalo a ese cliente y pruébalo con un prompt real. Cuarto, solo cuando eso funcione, añade una segunda herramienta y documenta qué hace cada una. Si algo falla, reduce el problema a una herramienta y un prompt, en lugar de depurar diez cosas a la vez.
Preguntas frecuentes
¿Qué es un MCP server en IA?
Un servidor MCP es un programa que expone herramientas, recursos o prompts a una aplicación de IA siguiendo el protocolo MCP. El cliente lo descubre, ve qué puede hacer y lo llama cuando el usuario lo pide.
¿Cuál es la diferencia entre una API y un MCP?
Una API es la interfaz concreta de un servicio. MCP es un protocolo común que estandariza cómo se describen y se llaman las herramientas, para que un cliente pueda trabajar con muchos servidores sin aprender una interfaz nueva cada vez.
¿Qué significan las siglas MCP?
En inteligencia artificial, MCP son las siglas de Model Context Protocol. Ojo: en medicina las mismas siglas pueden significar otra cosa, así que en este contexto siempre se refiere al protocolo para IA.
¿Necesito programar para usar MCP?
Para usar un servidor MCP ya construido, no necesariamente: basta con configurarlo en tu cliente. Para construir uno propio, sí necesitas programar, aunque con FastMCP en Python un primer servidor puede ser de pocas líneas.