MCP (Model Context Protocol): el nuevo estándar para herramientas de IA

Descubre cómo el Model Context Protocol (MCP) está revolucionando la integración de modelos de lenguaje con herramientas externas, ofreciendo un estándar abierto y seguro.

DevOps
CI/CDDockerK8s

MCP (Model Context Protocol): el nuevo estándar para herramientas de IA

¿Tu empresa está lista para IA? Descargá nuestro checklist gratuito →

Descargar checklist

¿Qué es MCP?

El Model Context Protocol (MCP) es un protocolo abierto propuesto por Anthropic que estandariza la forma en que los modelos de lenguaje (LLMs) se comunican con herramientas y fuentes de datos externas. Mientras que tecnologías como los plug-ins de ChatGPT han demostrado el potencial de los LLMs para interactuar con el mundo real, cada implementación tenía su propia API y modelo de seguridad, fragmentando el ecosistema. MCP busca unificar esto.

¿Por qué necesitamos un estándar?

Actualmente, para que un LLM pueda consultar una base de datos, enviar un correo o acceder a un archivo, los desarrolladores deben construir integraciones ad-hoc. Esto conlleva:

  • Duplicación de esfuerzos
  • Inconsistencias en seguridad
  • Dificultad para escalar

Con MCP, los desarrolladores pueden construir una vez y conectar cualquier modelo que soporte el protocolo. Es similar a cómo USB estandarizó la conexión de periféricos.

¿Cómo funciona MCP?

MCP sigue una arquitectura cliente-servidor:

  • Cliente MCP: es el agente (por ejemplo, un chatbot) que quiere utilizar herramientas.
  • Servidor MCP: expone herramientas, recursos y prompts de manera estandarizada.
  • Transporte: define cómo se envían los mensajes (por ejemplo, stdio, HTTP, WebSockets).

Los mensajes siguen un formato JSON-RPC 2.0. Por ejemplo, para listar herramientas disponibles, el cliente envía:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

El servidor responde con la lista de herramientas que el LLM puede invocar.

Componentes clave de MCP

Recursos

Los recursos son datos expuestos por el servidor, similares a endpoints REST. Pueden ser archivos, registros de bases de datos, etc. Se acceden mediante URIs, como file:///logs/app.log.

Herramientas (Tools)

Son funciones que el LLM puede ejecutar. Cada herramienta tiene un nombre, descripción y un esquema de entrada (JSON Schema). Por ejemplo, una herramienta para obtener el clima:

{
  "name": "get_weather",
  "description": "Obtiene el clima actual para una ubicación",
  "inputSchema": {
    "type": "object",
    "properties": {
      "location": { "type": "string" }
    },
    "required": ["location"]
  }
}

El LLM decide invocar la herramienta y el servidor ejecuta la lógica real.

Prompts

Permiten definir plantillas de prompts que el cliente puede usar para guiar al modelo. Esto es útil para estandarizar interacciones complejas.

¿Querés un diagnóstico personalizado? Completá el checklist gratuito →

Descargar checklist

Ejemplo práctico: Servidor MCP en Node.js

Supongamos que queremos exponer una herramienta que calcule el tiempo de entrega de un paquete. Usando la librería @modelcontextprotocol/sdk:

import { Server } from "@modelcontextprotocol/sdk/server/index.js";

const server = new Server(
  {
    name: "delivery-estimator",
    version: "1.0.0",
  },
  {
    capabilities: {
      tools: {},
    },
  }
);

server.setRequestHandler("tools/list", async () => ({
  tools: [
    {
      name: "estimate_delivery",
      description: "Estima el tiempo de entrega en días",
      inputSchema: {
        type: "object",
        properties: {
          origin: { type: "string" },
          destination: { type: "string" },
        },
        required: ["origin", "destination"],
      },
    },
  ],
}));

server.setRequestHandler("tools/call", async (request) => {
  if (request.params.name === "estimate_delivery") {
    const { origin, destination } = request.params.arguments;
    // Lógica de estimación (simulada)
    const days = Math.floor(Math.random() * 5) + 1;
    return {
      content: [
        {
          type: "text",
          text: `El tiempo de entrega de ${origin} a ${destination} es de aproximadamente ${days} días.`,
        },
      ],
    };
  }
  throw new Error("Herramienta no encontrada");
});

// Conectar transporte (ej. stdio)
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const transport = new StdioServerTransport();
await server.connect(transport);

Este servidor puede ser ejecutado y conectado a cualquier cliente MCP, como el asistente Claude de Anthropic.

Seguridad y control

MCP incluye mecanismos de seguridad:

  • El servidor define qué herramientas expone.
  • El cliente controla qué servidores puede usar.
  • Las interacciones son transparentes: el usuario ve qué herramientas se invocan.

Anthropic ha publicado una especificación abierta y ejemplos en GitHub.

Integración con asistentes de IA

Actualmente, Claude soporta MCP de forma nativa. Puedes configurar un servidor MCP local y Claude podrá usarlo para leer archivos, ejecutar código o llamar APIs externas. Esto permite que el asistente acceda a datos actualizados sin depender de su conocimiento de entrenamiento.

Impacto en el desarrollo de software

Para empresas como Tanok Tech, MCP representa una oportunidad para construir asistentes inteligentes modulares. En lugar de integrar cada LLM con cada herramienta por separado, podemos crear servidores MCP que centralicen la lógica de negocio y exponerla a cualquier modelo que cumpla el protocolo.

Esto reduce costos de desarrollo, mejora la mantenibilidad y permite cambiar de modelo de lenguaje sin reescribir integraciones.

Conclusión

MCP está llamado a ser el "USB-C" de la inteligencia artificial: un estándar que conecta modelos con herramientas de forma universal. Aunque es temprano, su adopción por parte de Anthropic y el soporte de la comunidad lo posicionan como un componente clave en el futuro de los agentes de IA.

En Tanok Tech, estamos explorando activamente MCP para ofrecer soluciones más robustas y flexibles a nuestros clientes. Si quieres saber cómo implementar MCP en tu proyecto, contáctanos.

Referencias

¿Listo para dar el próximo paso? Evaluá tu empresa con nuestro checklist gratuito →

Descargar checklist

Publicaciones relacionadas