SincroDev Logo SincroDev

Entendiendo la Arquitectura del Model Context Protocol (MCP)


La Inteligencia Artificial ha dejado de ser un chatbot aislado para convertirse en un sistema interconectado. El Model Context Protocol (MCP) es el estándar abierto que hace esto posible, permitiendo que aplicaciones como Claude Desktop o IDEs se conecten a tus datos locales y herramientas.

Pero, ¿cómo funciona exactamente bajo el capó? Analicemos su arquitectura.

El Diagrama General

La arquitectura de MCP es de tipo Cliente-Servidor. No es la IA la que “piensa” todo; es un ecosistema donde una aplicación anfitriona (Host) coordina recursos externos.

graph LR
    subgraph Host["MCP Host (Aplicacion IA)"]
        Client["MCP Client"]
    end

    subgraph Server["MCP Server"]
        Tools["Herramientas"]
        Resources["Recursos"]
        Prompts["Prompts"]
    end

    Client <-->|"Transport Layer"| Server

    style Host fill:#1e293b,stroke:#334155,color:#fff
    style Server fill:#0f172a,stroke:#475569,color:#fff
    style Client fill:#0ea5e9,stroke:#0284c7,color:#fff

Los Componentes Principales

1. MCP Host (El Anfitrión)

Es la aplicación principal con la que interactúas (ej. Claude Desktop, Cursor, VS Code). El Host es el cerebro que decide cuándo necesita información externa y orquesta la conexión.

  • Controla la interfaz de usuario.
  • Decide qué permisos otorgar.
  • Gestiona el ciclo de vida de los clientes.

2. MCP Client (El Conector)

Dentro del Host, el Cliente mantiene una conexión 1:1 con un Servidor.

  • Si tienes 5 herramientas instaladas, tu Host gestionará 5 clientes internos.
  • Se encarga de enviar las solicitudes y recibir las respuestas del servidor.

3. MCP Server (El Proveedor)

Aquí es donde ocurre la magia. Un servidor MCP es un programa ligero que expone tres tipos de capacidades:

  • Recursos (Resources): Datos pasivos (ej. leer un archivo, ver registros de una base de datos). Son como “adjuntar un archivo” pero dinámico.
  • Herramientas (Tools): Funciones ejecutables (ej. “crear un archivo”, “hacer un commit en Git”, “enviar un mensaje a Slack”). Permiten a la IA actuar.
  • Prompts: Plantillas predefinidas para guiar a la IA en tareas específicas.

Las Capas de Comunicación

Todo esto se sostiene sobre dos capas fundamentales:

La Capa de Protocolo (Data Layer)

Define qué se dicen el cliente y el servidor. Utiliza JSON-RPC, un formato estándar ligero.

  • Ejemplo: El cliente envía tools/list y el servidor responde con un JSON de las funciones que puede ejecutar.

La Capa de Transporte (Transport Layer)

Define cómo viaja el mensaje. MCP soporta dos métodos principales:

  1. Stdio (Standard Input/Output): Ideal para servidores locales. El Host arranca el servidor como un subproceso y se comunican por la terminal. Es rápido y seguro.
  2. SSE (Server-Sent Events) sobre HTTP: Ideal para servidores remotos. Permite mantener una conexión abierta donde el servidor puede enviar actualizaciones al cliente.

¿Por qué importa esto?

Esta arquitectura desacoplada significa que puedes escribir un servidor MCP en Python, otro en TypeScript y otro en Go, y tu aplicación de IA favorita (el Host) podrá usarlos todos simultáneamente sin saber cómo están hechos por dentro. Es la API universal para la IA.