¿Qué es el MCP y cómo funciona?

Los modelos de lenguaje extenso (LLM) son potentes, pero tienen dos limitaciones importantes: su conocimiento está congelado en el momento de su entrenamiento y no pueden interactuar con el mundo exterior. Esto significa que no pueden acceder a datos en tiempo real ni realizar acciones como reservar una reunión o actualizar el registro de un cliente. 

El protocolo de contexto de modelo (MCP) es un estándar abierto diseñado para resolver este problema. Presentado por Anthropic en noviembre del 2024, MCP proporciona un "lenguaje" seguro y estandarizado para que los LLM se comuniquen con datos, aplicaciones y servicios externos. Actúa como un puente que permite que la IA vaya más allá del conocimiento estático y se convierta en un agente dinámico que puede recuperar información actualizada y tomar medidas, lo que la hace más precisa, útil y automatizada.

Entender el protocolo de contexto del modelo

El MCP crea una conexión bidireccional estandarizada para las aplicaciones de IA, lo que permite que los LLMs se conecten fácilmente con diversas fuentes de datos y herramientas. El MCP se basa en conceptos ya existentes, como el uso de herramientas y la llamada a funciones, pero los estandariza. De esta forma, se reduce la necesidad de crear conexiones personalizadas para cada nuevo modelo de IA y sistema externo. Permite que los LLM usen datos actuales del mundo real, realicen acciones y accedan a funciones especializadas que no se incluyeron en su entrenamiento original.

Arquitectura y componentes de MCP

El protocolo de contexto del modelo tiene una estructura clara con componentes que funcionan conjuntamente para ayudar a los LLM y a los sistemas externos a interactuar fácilmente.

Host de MCP

El LLM está contenido en el host de MCP, una aplicación o un entorno de IA, como un IDE basado en IA o una IA conversacional. Este es el punto de interacción del usuario, donde el host de MCP usa el LLM para procesar solicitudes que pueden requerir datos o herramientas externos.

Cliente de MCP

El cliente de MCP, que se encuentra en el host de MCP, ayuda a que el LLM y el servidor de MCP se comuniquen entre sí. Traduce las solicitudes del LLM para el MCP y convierte las respuestas del MCP para el LLM. También busca y usa los servidores de MCP disponibles.

Servidor de MCP

El servidor de MCP es el servicio externo que proporciona contexto, datos o funciones al LLM. Ayuda a los LLM conectándose a sistemas externos, como bases de datos y servicios web, y traduciendo sus respuestas a un formato que el LLM pueda entender, lo que ayuda a los desarrolladores a proporcionar diversas funcionalidades.

Capa de transporte

La capa de transporte usa mensajes JSON-RPC 2.0 para comunicarse entre el cliente y el servidor, principalmente a través de dos métodos de transporte:

  • Entrada/salida estándar (stdio): funciona bien con recursos locales, ya que ofrece una transmisión de mensajes rápida y síncrona.
  • Eventos enviados por el servidor (SSE): se prefieren para los recursos remotos, ya que permiten un streaming de datos eficiente y en tiempo real.

¿Cómo funciona el MCP?

En esencia, el protocolo de contexto del modelo permite que un LLM solicite ayuda a herramientas externas para responder a una consulta o completar una tarea. Imagina que le pides a un asistente de IA lo siguiente: "Busca el último informe de ventas en nuestra base de datos y envíaselo por correo a mi jefe".

A continuación, te mostramos de forma simplificada cómo gestionaría este proceso MCP:

  1. Solicitud y descubrimiento de herramientas: el LLM entiende que no puede acceder a una base de datos ni enviar correos por sí solo. Utiliza el cliente de MCP para buscar herramientas disponibles y encuentra dos herramientas relevantes registradas en los servidores de MCP: una herramienta de consulta de bases de datos y otra de envío de correos.
  2. Invocación de herramientas: el LLM genera una solicitud estructurada para usar estas herramientas. En primer lugar, llama a la herramienta database_query y especifica el nombre del informe. A continuación, el cliente de MCP envía esta solicitud al servidor de MCP correspondiente.
  3. Acción externa y devolución de datos: el servidor de MCP recibe la solicitud, la traduce en una consulta de SQL segura para la base de datos de la empresa y recupera el informe de ventas. A continuación, da formato a estos datos y los envía de vuelta al LLM.
  4. Segunda acción y generación de respuesta: ahora que tiene los datos del informe, el LLM llama a la herramienta email_sender y proporciona la dirección de correo del gestor y el contenido del informe. Una vez enviado el correo, el servidor de MCP confirma que la acción se ha completado.
  5. Confirmación final: el LLM te da una respuesta final: "He encontrado el último informe de ventas y se lo he enviado por correo a tu jefe".

MCP frente a RAG

Tanto el protocolo de contexto de modelo (MCP) como la generación aumentada por recuperación (RAG) mejoran los LLM con información externa, pero lo hacen de diferentes maneras y con distintos fines. La RAG busca y usa información para crear texto, mientras que el MCP es un sistema más amplio para la interacción y la acción.

Función

Protocolo de contexto de modelo (MCP)

Generación aumentada por recuperación (RAG)

Objetivo principal

Estandariza la comunicación bidireccional para que los LLM puedan acceder a herramientas, fuentes de datos y servicios externos, e interactuar con ellos para realizar acciones y extraer información.

Mejora las respuestas de los LLMs recuperando información de una base de conocimientos autorizada antes de generar una respuesta.

Mecanismo

Define un protocolo estandarizado para que las aplicaciones de LLM invoquen funciones externas o soliciten datos estructurados a servidores especializados, lo que permite realizar acciones e integrar el contexto de forma dinámica.

Incorpora un componente de recuperación de información que usa la consulta de un usuario para extraer información de una base de conocimientos o una fuente de datos. A continuación, esta información obtenida se añade a la petición del LLM.

Tipo de salida

Permite que los LLM generen llamadas estructuradas para herramientas, reciban resultados y, a continuación, generen texto legible para humanos basándose en esos resultados y acciones. También puede implicar datos y funciones en tiempo real.

Los LLM generan respuestas basadas en sus datos de entrenamiento aumentados con texto relevante para la consulta de documentos externos. Suele centrarse en la precisión de los datos.

Interacción

Diseñado para la interacción activa y la ejecución de tareas en sistemas externos, proporcionando una "gramática" para que los LLM "utilicen" las funciones externas.

Principalmente para la recuperación pasiva de información que sirva de base para la generación de texto; no suele utilizarse para ejecutar acciones en sistemas externos.

Estandarización

Un estándar abierto sobre cómo las aplicaciones de IA proporcionan contexto a los LLM, estandarizando la integración y reduciendo la necesidad de APIs personalizadas.

Una técnica o un marco para mejorar los LLM, pero no un protocolo universal para la interacción con herramientas de distintos proveedores o sistemas.

Casos prácticos

Agentes de IA que realizan tareas (por ejemplo, reservar vuelos, actualizar el CRM o ejecutar código), obtienen datos en tiempo real e integraciones avanzadas.

Sistemas de preguntas y respuestas, chatbots que proporcionan información objetiva actualizada, resumen de documentos, reducción de las alucinaciones en la generación de texto.

Función

Protocolo de contexto de modelo (MCP)

Generación aumentada por recuperación (RAG)

Objetivo principal

Estandariza la comunicación bidireccional para que los LLM puedan acceder a herramientas, fuentes de datos y servicios externos, e interactuar con ellos para realizar acciones y extraer información.

Mejora las respuestas de los LLMs recuperando información de una base de conocimientos autorizada antes de generar una respuesta.

Mecanismo

Define un protocolo estandarizado para que las aplicaciones de LLM invoquen funciones externas o soliciten datos estructurados a servidores especializados, lo que permite realizar acciones e integrar el contexto de forma dinámica.

Incorpora un componente de recuperación de información que usa la consulta de un usuario para extraer información de una base de conocimientos o una fuente de datos. A continuación, esta información obtenida se añade a la petición del LLM.

Tipo de salida

Permite que los LLM generen llamadas estructuradas para herramientas, reciban resultados y, a continuación, generen texto legible para humanos basándose en esos resultados y acciones. También puede implicar datos y funciones en tiempo real.

Los LLM generan respuestas basadas en sus datos de entrenamiento aumentados con texto relevante para la consulta de documentos externos. Suele centrarse en la precisión de los datos.

Interacción

Diseñado para la interacción activa y la ejecución de tareas en sistemas externos, proporcionando una "gramática" para que los LLM "utilicen" las funciones externas.

Principalmente para la recuperación pasiva de información que sirva de base para la generación de texto; no suele utilizarse para ejecutar acciones en sistemas externos.

Estandarización

Un estándar abierto sobre cómo las aplicaciones de IA proporcionan contexto a los LLM, estandarizando la integración y reduciendo la necesidad de APIs personalizadas.

Una técnica o un marco para mejorar los LLM, pero no un protocolo universal para la interacción con herramientas de distintos proveedores o sistemas.

Casos prácticos

Agentes de IA que realizan tareas (por ejemplo, reservar vuelos, actualizar el CRM o ejecutar código), obtienen datos en tiempo real e integraciones avanzadas.

Sistemas de preguntas y respuestas, chatbots que proporcionan información objetiva actualizada, resumen de documentos, reducción de las alucinaciones en la generación de texto.

Ventajas de usar el MCP

El protocolo de contexto del modelo ofrece varias ventajas potenciales para desarrollar e implementar aplicaciones basadas en IA, lo que hace que los LLM sean más versátiles, fiables y capaces.

Menos alucinaciones

Los LLM, por su naturaleza, a veces pueden inventarse hechos o producir información plausible pero incorrecta (alucinar) porque predicen respuestas basándose en datos de entrenamiento, no en información en tiempo real. MCP ayuda a reducir este problema, ya que proporciona una forma clara de que los LLM accedan a fuentes de datos externas y fiables, lo que hace que sus respuestas sean más veraces.

Mayor utilidad de la IA y automatización

Este protocolo ayuda a la IA a hacer mucho más y a trabajar por su cuenta. Normalmente, los LLMs solo saben aquello con lo que se han entrenado, lo que puede quedar obsoleto rápidamente. Sin embargo, con MCP, los LLM pueden conectarse con muchas herramientas e integraciones listas para usar, como software empresarial, repositorios de contenido y entornos de desarrollo. Esto significa que la IA puede encargarse de tareas más complejas que implican interactuar con el mundo real, como actualizar la información de los clientes en un sistema de CRM, buscar acontecimientos actuales online o hacer cálculos especiales. Al conectarse directamente a estas herramientas externas, los LLM dejan de ser solo programas de chat y se convierten en agentes inteligentes que pueden actuar de forma independiente, lo que significa que se puede automatizar mucho más.

Conexiones más sencillas para la IA

Antes del MCP, conectar LLM a diferentes fuentes de datos y herramientas externas era más difícil, ya que normalmente se necesitaban conexiones especiales o métodos específicos de cada proveedor. Esto dio lugar a un sistema complicado y desordenado, a menudo denominado el problema "N x M", porque el número de conexiones personalizadas necesarias crecía muy rápidamente con cada nuevo modelo o herramienta. MCP ofrece un estándar común y abierto que facilita estas conexiones, de forma similar a como un puerto USB-C simplifica la conexión de dispositivos. Este método más sencillo puede reducir los costes de desarrollo, acelerar la creación de aplicaciones de IA y crear un entorno de IA más conectado. Los desarrolladores también pueden cambiar más fácilmente de proveedor de LLM y añadir nuevas herramientas sin hacer grandes cambios.

MCP y seguridad

Aunque el protocolo de contexto del modelo mejora las funciones de los LLM al conectarlos con sistemas externos, también puede plantear importantes consideraciones de seguridad. Como MCP puede acceder a cualquier dato y, potencialmente, ejecutar código a través de las herramientas conectadas, es esencial que tenga una seguridad sólida.

Los principios de seguridad clave de MCP incluyen lo siguiente:

  • Consentimiento y control del usuario: los usuarios deben entender claramente y aceptar todas las acciones y el acceso a los datos que realice el LLM a través de MCP. Deberían poder controlar qué datos se comparten y qué acciones se llevan a cabo, idealmente a través de pantallas de autorización fáciles de usar.
  • Privacidad de los datos: antes de exponer los datos de los usuarios a los servidores de MCP, los hosts deben obtener un permiso claro de los usuarios. Los datos sensibles deben protegerse con controles de acceso adecuados para evitar filtraciones o comparticiones accidentales, sobre todo porque los LLM gestionan grandes cantidades de datos. Es fundamental usar cifrado y reglas de control de acceso estrictas.
  • Seguridad de las herramientas: las herramientas vinculadas a través de MCP pueden usarse para ejecutar código. Los desarrolladores no deben fiarse de las descripciones de las herramientas a menos que provengan de un servidor fiable. Los usuarios deben dar permiso antes de usar cualquier herramienta y entender lo que hace antes de permitir que se ejecute.
  • Gestión segura de la salida: las salidas de LLM de las interacciones con MCP deben gestionarse con cuidado para evitar problemas de seguridad como el scripting entre sitios (XSS) u otros ataques a aplicaciones web si la salida se muestra a los usuarios. Es importante limpiar correctamente las entradas y filtrar las salidas, así como evitar incluir datos sensibles en las peticiones.
  • Seguridad de la cadena de suministro: la fiabilidad de los servidores de MCP y de las herramientas externas a las que se conectan es muy importante. Las empresas deben asegurarse de que todas las partes de su cadena de suministro de LLM sean seguras para evitar resultados sesgados, brechas de seguridad o fallos.
  • Monitorización y auditoría: comprobar periódicamente la actividad de los LLM y cómo interactúan con los servidores de MCP puede ayudar a detectar comportamientos inusuales o posibles usos inadecuados. Configurar sistemas de registro y auditoría sólidos permite hacer un seguimiento del movimiento de datos y del uso de herramientas, lo que resulta útil a la hora de responder a incidentes de seguridad.

Si los desarrolladores se ciñen a estos principios, podrán aprovechar el potencial de MCP y, al mismo tiempo, protegerse de los posibles riesgos.

Crear y desplegar una aplicación basada en MCP

Para implementar el protocolo de contexto de modelo, se necesita una infraestructura sólida que aloje el LLM, los servidores de MCP y las fuentes de datos subyacentes. Una plataforma en la nube proporciona los componentes escalables y seguros necesarios para crear una solución completa. Aquí te explicamos cómo puedes hacerlo:

Alojamiento y escalado de tus servidores de MCP

Los servidores de MCP son el puente hacia tus herramientas externas. En función de tus necesidades, puedes elegir entre:

  • Entornos sin servidor (como Cloud Run): son ideales para herramientas sencillas y sin reconocimiento del estado. Una plataforma sin servidor escala automáticamente tus servidores en función de la demanda, incluso hasta cero, para que solo pagues por lo que usas. Es perfecto para implementar herramientas individuales de forma eficiente.
  • Orquestación de contenedores (como Google Kubernetes Engine [GKE]): para aplicaciones complejas con estado que requieren un control preciso de las redes y los recursos, un entorno de Kubernetes gestionado proporciona la potencia y la flexibilidad necesarias para ejecutar una infraestructura de MCP sofisticada a escala empresarial.

Conectar el MCP con tus datos y herramientas

Gran parte del valor de MCP procede de las herramientas a las que puede acceder. Puedes conectar tu LLM a:

  • Bases de datos gestionadas (como Cloud SQL o Spanner): permiten que tu IA consulte de forma segura bases de datos relacionales para obtener información de clientes, inventario o datos operativos, entre otros.
  • Almacenes de datos (como BigQuery): para tareas analíticas, un LLM puede aprovechar un almacén de datos para analizar conjuntos de datos masivos y extraer información contextual detallada en respuesta a la consulta de un usuario.

Orquestar el flujo de trabajo de IA de extremo a extremo con Vertex AI

Una plataforma de IA unificada es esencial para que todo encaje. Vertex AI te ayuda a gestionar todo el ciclo de vida de tu aplicación basada en MCP:

  • Alojamiento de LLMs: despliega y gestiona modelos fundacionales potentes como Gemini, que sirven como "cerebro" de tu aplicación.
  • Frameworks de agentes y orquestación: crear un agente de IA implica flujos de trabajo complejos. Vertex AI proporciona herramientas para optimizar el flujo de información entre el LLM y el contexto que proporcionan tus servidores de MCP, lo que simplifica el desarrollo de agentes sofisticados que pueden razonar y actuar.

Ve un paso más allá

Empieza a crear en Google Cloud con 300 USD en crédito gratis y más de 20 productos Always Free.

Google Cloud