MCP: Preguntas y respuestas sobre IA

El Protocolo de Contexto del Modelo (MCP) está generando un considerable revuelo en el espacio de la inteligencia artificial (IA). Este estándar de código abierto, encabezado por Anthropic, tiene como objetivo agilizar la conexión de fuentes de datos externas con los Modelos de Lenguaje Grande (LLM). Si bien este desarrollo promete importantes beneficios para los desarrolladores de IA, también introduce posibles vulnerabilidades de seguridad. Esta guía completa aborda las preguntas más frecuentes sobre MCP, arrojando luz sobre su funcionalidad, beneficios y consideraciones de seguridad.

¿Qué es Exactamente el Protocolo de Contexto del Modelo (MCP)?

En su esencia, el Protocolo de Contexto del Modelo (MCP) sirve como un puente universal, facilitando la interacción entre los LLM y los recursos externos. Establece una metodología estandarizada para que los LLM identifiquen y utilicen los recursos disponibles de manera efectiva. Esto permite que el LLM discierna cuándo y por qué debe aprovechar estos recursos para cumplir tareas o mejorar su comprensión.

El alcance de los datos externos accesibles a través de MCP es vasto, abarcando sistemas de archivos locales, bases de datos, API y aplicaciones de Software como Servicio (SaaS), entre otros.

En esencia, MCP permite a los LLM realizar solicitudes deterministas de datos o acciones, lo que les permite recurrir a información más allá de sus conjuntos de datos de entrenamiento preexistentes para proporcionar respuestas precisas y completas.

La adopción generalizada de MCP está transformando rápidamente el panorama de la IA, con numerosas empresas de IA integrándolo en sus plataformas.

¿Por qué el Aumento del Interés en MCP?

La fuerza impulsora detrás de la creciente popularidad de MCP radica en su capacidad para estandarizar la conexión de fuentes de datos externas a los LLM. Esta estandarización ofrece a los desarrolladores una ventaja significativa: pueden crear una única integración para un LLM e implementarla sin problemas en varias herramientas y LLM que admitan MCP. Este enfoque de ‘escribir una vez, usar en todas partes’ simplifica drásticamente el proceso de integración.

Además, la aparición de ‘tiendas de aplicaciones’ y ‘mercados’ que ofrecen servidores MCP agiliza aún más el proceso de integración, permitiendo a los desarrolladores incorporarlos rápidamente en sus entornos. También están disponibles servicios dedicados que se especializan en la creación de servidores MCP personalizados, que se adaptan a necesidades y requisitos específicos.

¿Es esta la Primera Instancia de LLM Interactuando con Datos Externos?

El concepto de IA Agente, que posee la capacidad de operar de forma autónoma e interactuar con fuentes externas, existe desde hace algún tiempo. Sin embargo, las implementaciones anteriores a menudo eran únicas para cada herramienta, careciendo de estandarización. Soluciones como LangFlow han intentado abordar este problema estandarizando algunas de las herramientas y permitiendo la interacción con múltiples LLM dentro de un marco específico.

MCP lleva la estandarización al siguiente nivel, permitiendo la creación de integraciones que se pueden utilizar en múltiples soluciones, rompiendo los silos que existían anteriormente.

¿Cómo Empezar a Trabajar con MCP?

Para empezar a trabajar con MCP, necesitará una aplicación host (denominada ‘cliente’) y un servidor. La aplicación host sirve como el orquestador central, gestionando la comunicación entre el LLM y las interfaces que se conectan a los servidores MCP.

Un ejemplo fundamental es utilizar Claude Desktop para agregar un servidor MCP de sistema de archivos, como se detalla en la guía de Inicio Rápido para Usuarios de Claude Desktop. Esto demuestra el proceso de agregar un servidor de sistema de archivos a Claude Desktop, permitiéndole proporcionar información del sistema de archivos local a Claude.ai. Si bien Claude Desktop sirve como un campo de pruebas para los servidores MCP, numerosos otros clientes ofrecen experiencias de usuario mejoradas.

Están surgiendo directorios en línea de clientes y servidores MCP, como Clientes MCP | Glama y Servidores MCP de Código Abierto | Glama, que proporcionan valiosos recursos para los desarrolladores.

¿Cómo Funciona MCP?

MCP opera en una arquitectura cliente/servidor, permitiendo que los LLM interactúen con datos externos sin problemas. Esta arquitectura consta de tres componentes principales:

  • Host: La aplicación host gestiona la interacción entre los LLM y múltiples clientes MCP. Los hosts MCP populares incluyen Claude Desktop, Claude Code, Cursor, Windsurf e integraciones de editores como Cline y Continue.

  • Cliente: El cliente actúa como una interfaz dentro de la aplicación host, facilitando la interacción entre el LLM y el servidor. Mantiene una conexión uno a uno con el servidor.

  • Servidor: El servidor es una pequeña aplicación que se comunica con el cliente utilizando el protocolo MCP. Proporciona procesos estandarizados para enumerar capacidades y responder a solicitudes de datos o acciones relevantes.

Si bien estos componentes se discuten típicamente como entidades separadas, se pueden integrar en una sola aplicación o existir como aplicaciones separadas. Actualmente, la configuración más común implica que el cliente esté integrado en la aplicación host, comunicándose con el servidor a través de transportes seguros utilizando JSON-RPC.

¿Qué Capacidades Ofrecen los Servidores MCP?

Los servidores MCP proporcionan a los clientes una gama de capacidades para respaldar la recuperación de datos y las acciones realizadas en los datos. Estas capacidades incluyen:

  • Recursos: Almacenes de datos que el LLM puede rastrear, como archivos, información del esquema de la base de datos y registros de la consola. Los recursos se cargan al comienzo de una sesión de chat para evitar solicitudes repetidas de datos estáticos.

  • Herramientas: Acciones que se pueden realizar, como recuperar contenido de archivos, insertar datos en una base de datos o responder a correos electrónicos.

  • Indicaciones: Indicaciones útiles y reutilizables proporcionadas por el servidor al cliente. Muchas aplicaciones host permiten a los usuarios enumerar las indicaciones disponibles utilizando una función de ‘lista rápida’, a menudo activada al escribir ‘/‘. Estas indicaciones también pueden servir como plantillas que se pueden completar dinámicamente con entradas de usuario.

Actualmente, las ‘herramientas’ son la capacidad más impactante que ofrece MCP y la que atrae la mayor atención.

¿Es Seguro el Uso del Servidor MCP?

MCP se basa en gran medida en la confianza, que abarca:

  • Confianza en que la aplicación host controla eficazmente el acceso a los clientes.
  • Confianza en que el cliente utiliza transportes seguros al comunicarse con el servidor.
  • Confianza en que el servidor implementa prácticas seguras al acceder a los recursos.

Los usuarios deben priorizar los servidores MCP de fuentes acreditadas y siempre tener precaución al verificar la integridad del software antes de la instalación.

¿Cómo Implementa la Seguridad el Host MCP?

La aplicación host debe implementar controles que permitan al usuario aprobar las herramientas antes de que se utilicen. Las aplicaciones convencionales a menudo tienen mecanismos para verificar la aceptabilidad del uso de la herramienta. Por ejemplo, Claude Desktop solicita al usuario que elija entre ‘usar una vez’ o ‘usar para toda la sesión de chat’ cuando se llama a una herramienta por primera vez. Otras aplicaciones, como Cline, pueden tener métodos para aprobar automáticamente ciertas herramientas o aplicaciones. El nivel de información presentada al usuario en estos diálogos de verificación puede variar.

¿Qué Controles de Seguridad de Transporte Están Disponibles?

Se utilizan dos mecanismos de transporte principales: STDIO y Server Sent Events (SSE).

  • STDIO es preferible cuando el cliente y el servidor residen en la misma computadora. Dirige la salida del cliente a la entrada del servidor y viceversa. El transporte solo se puede comprometer si se viola el sistema local.

  • SSE se utiliza cuando el cliente y el servidor están en diferentes computadoras. Transporta mensajes JSON a través de conexiones HTTP, lo que permite el uso de opciones de seguridad HTTP estándar como transportes SSL y autorización de Open Authentication (OAuth).

¿Cuáles Son los Mayores Riesgos de Usar MCP?

El riesgo más significativo asociado con MCP es la inyección de servidores maliciosos. Debido a que todos los servidores registrados tienen un único punto de referencia en la aplicación host y LLM, los servidores maliciosos pueden potencialmente envenenar el LLM o explotar las herramientas de servidores legítimos. A medida que el ecosistema MCP madura, se espera la formalización de conceptos como la certificación de seguridad MCP, el monitoreo de la integridad del servidor y la estandarización del registro para el monitoreo. También es probable que surjan ‘tiendas de aplicaciones’ MCP, que proporcionen repositorios centralizados para integrar fácilmente los servidores MCP en las herramientas existentes.

Si bien la especificación MCP recomienda encarecidamente la autenticación y autorización para servidores remotos, no las exige. Los desarrolladores de servidores MCP pueden pasar por alto los aspectos de seguridad de la red y no implementar estas recomendaciones.

Los servidores MCP accesibles de forma remota son vulnerables a ataques de intermediario y exploits remotos. Por lo tanto, cualquier servidor MCP que utilice transporte basado en red debe implementar mecanismos sólidos de autenticación y autorización.

¿Cómo Puedo Proteger mi Información al Usar MCP?

A medida que las soluciones técnicas y las capacidades para asegurar las soluciones MCP continúan evolucionando, la recomendación actual es adherirse a las mejores prácticas de ciberseguridad establecidas. Los pasos clave incluyen:

  • Detecte e inventarie sus instalaciones y configuraciones de MCP en todo su entorno. Dada la etapa inicial de adopción de MCP, esto requiere un enfoque más práctico que implica una inspección minuciosa de los puntos finales en busca de archivos de configuración, en lugar de depender del monitoreo centralizado. Comprender y aprobar el uso de MCP es fundamental para mantener la integridad ambiental.

  • Controle el acceso y monitoree los recursos a los que acceden los servidores MCP. Ya sea que los recursos sean locales para los puntos finales o las aplicaciones SaaS, monitorear el acceso a través del registro y la auditoría es esencial.

  • Capacite a las personas que están usando MCP en sus deberes laborales. Asegúrese de que comprendan el impacto de una herramienta antes de autorizar su uso. La especificación MCP enfatiza el consentimiento y la autorización del usuario antes de que se realicen las operaciones. La capacitación proporciona la comprensión necesaria para tomar decisiones informadas.