Alexander Maridueña

February 26, 2025

Adoptando MCP: Conectando LLMs y Servicios de Manera Escalable

En los últimos años, la adopción de la inteligencia artificial en entornos empresariales se ha disparado. Modelos de lenguaje de nueva generación (LLMs) como GPT, Claude o Llama han demostrado su capacidad para procesar lenguaje de forma cada vez más sofisticada, permitiendo automatizar tareas y ofrecer experiencias conversacionales de alto valor. Sin embargo, aún existe un gran reto: conectar estos modelos con servicios y datos reales para que sus respuestas sean relevantes y fiables.

Las integraciones a menudo se realizaban con llamadas a funciones (function calling), donde cada modelo define su propio formato para "invocar" APIs externas, con múltiples peculiaridades y limitaciones. Esto dificulta la construcción de herramientas escalables, predecibles y seguras.

¿El resultado?

Un ecosistema fragmentado de integraciones y conectores, donde cada proyecto se ve obligado a crear sus propias soluciones ad hoc para comunicar sus datos al modelo. En Jelou hemos sentido este dolor de primera mano. Nuestra plataforma orquesta modelos y capacidades conversacionales para que empresas y personas creen interfaces de chat más inteligentes, pero necesitábamos algo más robusto y universal para conectar a estos modelos con todo tipo de servicios.

De Function Calling a Model Context Protocol (MCP)

Un enfoque inicial para conectar LLMs con servicios era el Function Calling. La idea: el modelo genera un bloque JSON o similar para indicar qué función se debe invocar y con qué parámetros. Sin embargo:

  1. Falta de estándar: OpenAI, Claude, Llama y otras soluciones usan estructuras JSON ligeramente distintas.
  2. Limitaciones de predictibilidad: El modelo a veces “malinterpreta” qué función usar o cómo formatear argumentos.
  3. Conectores muy frágiles: Cada servicio expuesto al modelo requería un conector custom y la información regresaba al LLM de forma no necesariamente reutilizable.

El Model Context Protocol (MCP) surge entonces como un nuevo estándar abierto que separa la generación de instrucciones (cómo un LLM decide qué hacer) de la ejecución de esas instrucciones (cómo un servidor procesa esas llamadas y devuelve resultados).

¿Por qué MCP marca la diferencia?

  • Protocolo universal: Los clientes MCP (por ejemplo, una app como Jelou) hablan el mismo idioma con múltiples servidores MCP (conectores), sin importar el modelo subyacente.
  • Menor fricción: En vez de traducir la lógica de cada LLM, se aprovecha un formato JSON-RPC estándar para llamar y responder a funciones.
  • Escalabilidad: Con MCP, si integramos un nuevo sistema (ej. Slack, Google Drive, Postgres), simplemente añadimos un servidor MCP para ese servicio. Los modelos, a su vez, entienden esa funcionalidad sin reescribir integraciones ni prompt engineering complejo.

Como mencionan los pioneros de este protocolo:

"MCP ofrece una forma de universalizar la ejecución de instrucciones generadas por modelos, manteniendo la compatibilidad y simplificando la arquitectura.”

Organizaciones como Block y Apollo ya han adoptado MCP para unificar cómo sus servicios se conectan con la IA, y empresas como Replit, Zed, Codeium o Sourcegraph lo están usando para dar a las IA acceso a más contexto de forma ordenada.

“Open technologies como el Model Context Protocol son los puentes que conectan la IA con aplicaciones reales, garantizando que la innovación sea accesible y esté arraigada en la colaboración.”
Dhanji R. Prasanna, CTO de Block

Jelou como MCP Host

En Jelou, vemos un enorme potencial en esta iniciativa. Nuestro objetivo es permitir que cualquier persona o empresa conecte sus servicios a modelos de IA de forma ágil y segura. Visualizamos a Jelou como un MCP Host, capaz de recibir instrucciones de distintos modelos o MCP Clients y exponer múltiples servicios y datos relevantes.

Jelou, como MCP Host, podrá conectarse con cualquier otro MCP Host, ya sea dentro de su propio ecosistema o de forma externa, facilitando la integración con diversos servicios y fuentes de datos.

Pero no nos quedamos ahí. Queremos ofrecer un entorno de desarrollo seguro dentro de la propia plataforma, donde puedas:

  • Construir y alojar tus propios MCP Servers: Define las funciones o APIs que quieras exponer a tus asistentes conversacionales.
  • Configurar la lógica de negocio de forma sencilla: Proporciona ejemplos y descripciones, y dejaremos que un LLM genere el skeleton de tu MCP Server.
  • Mantener la seguridad y el aislamiento: Implementaremos un sandbox robusto que aislará el código para que no pueda comprometer otros sistemas.

Function Calling vs MCP

Para ilustrar mejor la diferencia, veamos un ejemplo práctico de cómo se implementaría una integración con un CRM usando ambos enfoques:

Function Calling (OpenAI - GPT-4o):

Function Calling permite definir funciones que un modelo de IA puede invocar cuando identifica que son relevantes para responder a una solicitud. No sigue un estándar único y cada proveedor de IA puede implementarlo de manera diferente, lo que puede llevar a un ecosistema fragmentado. 

functions = [{
    "name": "buscar_cliente",
    "description": "Busca información de un cliente en el CRM",
    "parameters": {
        "type": "object",
        "properties": {
            "email": {"type": "string"},
            "campos": {"type": "array", "items": {"type": "string"}}
        }
    }
}]


MCP (Universal):

MCP (Method Calling Protocol) se basa en JSON-RPC, un protocolo estándar ampliamente adoptado en la comunidad para llamadas a procedimientos remotos. JSON-RPC es independiente de cualquier proveedor y ofrece una forma estructurada y predecible de hacer llamadas a APIs, lo que facilita la interoperabilidad con diversos sistemas.

{
    "jsonrpc": "2.0",
    "method": "crm.buscarCliente",
    "params": {
        "email": "juan@empresa.com",
        "campos": ["nombre", "ultimo_pedido"]
    },
    "id": 1
}

Arquitectura del Bridge

Reconocemos que, aunque MCP ofrece un estándar prometedor, no todos los modelos de lenguaje actuales lo soportan de forma nativa. Para abordar esta limitación y promover una adopción más amplia, estamos desarrollando un componente denominado “Bridge”. 

A continuación, un gráfico que ilustra la arquitectura que proponemos para el Bridge:
CleanShot 2025-02-26 at 12.25.33.png


El Bridge permite conectar modelos no compatibles con MCP, traduciéndolos en tiempo real y manteniendo la interoperabilidad con cualquier servicio MCP.

Conclusiones y visión a futuro

El Model Context Protocol representa el siguiente paso en la evolución de la IA aplicada. Frente a la complejidad de function calling, MCP ofrece un estándar abierto y escalable que unifica cómo los modelos y los servicios se comunican.

En Jelou, apostamos por construir soluciones de IA más potentes, con menos fricción y más fiabilidad.