Saltar al contenido principal
VPS

Cómo alojar un servidor MCP en un VPS

Guía para alojar un servidor MCP (Model Context Protocol) en un VPS: transporte Streamable HTTP, Docker, HTTPS, autenticación OAuth y seguridad del servidor.

24 de septiembre de 202610 min
Manos escribiendo código en una laptop con un editor de programación abierto
Foto: Marc Chouinard / StockSnap (CC0)
Contenido del artículo

Alojar un servidor MCP en un VPS permite que asistentes de IA como Claude, ChatGPT u otros clientes compatibles consulten tus sistemas (base de datos, CRM, inventario o documentos) desde cualquier lugar, de forma controlada. En esta guía explicamos qué es el Model Context Protocol, cuándo tiene sentido un servidor MCP remoto y cómo desplegarlo con Docker, HTTPS y autenticación en un VPS.

Respuesta rápida

Para usar un servidor MCP de forma remota necesitas el transporte Streamable HTTP, un VPS con Docker, un dominio con HTTPS mediante proxy inverso, autenticación (idealmente OAuth) y un firewall que exponga solo los puertos necesarios. El transporte stdio sirve solo para uso local en el mismo equipo.

¿Qué es MCP (Model Context Protocol)?

MCP es un protocolo abierto que estandariza cómo una aplicación de IA se conecta con herramientas y datos externos. En lugar de crear una integración distinta para cada asistente, construyes un servidor MCP que expone:

  • Herramientas (tools): acciones que la IA puede ejecutar, como “consultar pedido” o “crear ticket”.
  • Recursos (resources): datos que la IA puede leer, como documentos o registros.
  • Prompts: plantillas de instrucciones reutilizables.

El cliente (el asistente de IA) descubre esas capacidades y las usa cuando el usuario lo necesita.

Transportes: stdio vs Streamable HTTP

La especificación de MCP define dos transportes estándar:

TransporteCómo funcionaCuándo usarlo
stdioEl cliente lanza el servidor como proceso local y se comunican por entrada/salida estándarUso personal en el mismo computador
Streamable HTTPEl servidor escucha en una URL HTTP y atiende a clientes remotosServidores compartidos, equipos, producción en un VPS

Para un VPS, el transporte correcto es Streamable HTTP. El antiguo transporte HTTP+SSE fue reemplazado por Streamable HTTP en versiones recientes de la especificación, así que revisa que tu SDK esté actualizado.

La especificación evoluciona

MCP recibe revisiones frecuentes. Al momento de escribir, hay una nueva versión de la especificación en fase de candidata con cambios en el núcleo y la autorización. Consulta la documentación oficial en modelcontextprotocol.io antes de desplegar.

¿Por qué un VPS y no un hosting compartido?

Un servidor MCP es una aplicación que corre de forma permanente (Node.js, Python u otro lenguaje), mantiene conexiones abiertas y necesita control del puerto y del proceso. Un hosting compartido no está pensado para eso. Un VPS te da:

  • Acceso root para instalar Docker, Node.js o Python.
  • Procesos que corren 24/7.
  • Control de firewall y puertos.
  • Recursos dedicados de CPU y RAM.

En Moshipp, los VPS Cloud incluyen distribuciones Linux como Ubuntu 24.04 LTS o Debian 12, protección DDoS, firewall y acceso root. Por ejemplo, el plan VPS X11 ofrece 2 vCore, 4 GB de RAM y 50 GB NVMe, suficiente para varios servidores MCP ligeros. Los VPS están ubicados en Canadá (Beauharnois).

Paso a paso: desplegar un servidor MCP en un VPS

1. Prepara el VPS

Actualiza el sistema, crea un usuario sin privilegios de root y desactiva el acceso por contraseña en SSH. Sigue nuestra guía de hardening de un VPS Linux.

2. Instala Docker

Docker aísla el servidor MCP y facilita actualizaciones. Tenemos una guía para instalar Docker en un VPS.

3. Empaqueta tu servidor MCP

Usa el SDK oficial de MCP para tu lenguaje (TypeScript o Python son los más comunes) y configura el transporte Streamable HTTP escuchando en un puerto interno, por ejemplo 3000. Un docker-compose.yml básico:

services:
  mcp:
    build: .
    restart: unless-stopped
    environment:
      - PORT=3000
    env_file: .env
    ports:
      - "127.0.0.1:3000:3000"

El puerto se publica solo en 127.0.0.1: nadie puede acceder directamente desde internet, solo a través del proxy inverso.

4. Apunta un subdominio al VPS

Crea un registro A, por ejemplo mcp.tuempresa.com, con la IP del VPS. Si no sabes cómo, lee cómo conectar un dominio a un VPS y cómo crear subdominios.

5. Configura el proxy inverso con HTTPS

Usa Nginx o Caddy para recibir el tráfico en el puerto 443 con certificado SSL y reenviarlo al contenedor. Con Nginx, puedes obtener el certificado gratis con Let’s Encrypt. Ten en cuenta que MCP puede usar respuestas en streaming, así que desactiva el buffering del proxy para esa ruta.

6. Añade autenticación

Nunca publiques un servidor MCP sin autenticación: quien tenga la URL podría usar tus herramientas. Para Streamable HTTP, la especificación define autorización basada en OAuth 2.1. Si todavía no implementas OAuth, como mínimo:

  • Exige un token en la cabecera Authorization.
  • Restringe por IP cuando sea posible.
  • Guarda secretos en variables de entorno, nunca en el código.

7. Cierra el firewall

Deja abiertos solo los puertos 22 (SSH, idealmente restringido), 80 y 443. El puerto interno del servidor MCP no debe estar expuesto.

8. Conecta el cliente

En el asistente de IA compatible, agrega el servidor remoto con la URL https://mcp.tuempresa.com/mcp (o la ruta que definas) y completa la autenticación.

Buenas prácticas de seguridad

  • Principio de mínimo privilegio: si la IA solo necesita leer pedidos, que el usuario de base de datos sea de solo lectura.
  • Confirmación de acciones sensibles: borrar, pagar o enviar correos masivos debe requerir aprobación humana.
  • Registros (logs): guarda qué herramienta se llamó, cuándo y con qué parámetros.
  • Límites de uso: aplica rate limiting en el proxy.
  • Inyección de instrucciones: los datos que lee la IA (correos, documentos) pueden contener instrucciones maliciosas. Valida en el servidor, no confíes en el modelo.
  • Actualizaciones: mantén al día el SDK de MCP, Docker y el sistema operativo.

¿Cuántos recursos necesita un servidor MCP?

Depende de lo que haga. Un servidor que solo consulta una API externa consume poco; uno que procesa documentos o ejecuta búsquedas vectoriales necesita más RAM. Como referencia orientativa:

EscenarioRecursos sugeridos
1–3 servidores MCP ligeros (consultas a APIs)2 vCore, 4 GB RAM
MCP + base de datos + n8n2–4 vCore, 6–8 GB RAM
Procesamiento de documentos o búsqueda vectorial4+ vCore, 8–16 GB RAM

Si además automatizas procesos con n8n, puedes combinar ambos en el mismo servidor; revisa cuánta RAM necesita n8n en un VPS.

Preguntas frecuentes

¿Qué es un servidor MCP?

Es un programa que expone herramientas, datos y prompts a asistentes de IA mediante el Model Context Protocol, un estándar abierto. Permite que la IA consulte o actúe sobre tus sistemas de forma controlada.

¿Puedo alojar un servidor MCP en hosting compartido?

No es recomendable. Un servidor MCP remoto es un proceso permanente que necesita control de puertos y del entorno de ejecución. Un VPS con acceso root es la opción adecuada.

¿Qué transporte debo usar en un VPS?

Streamable HTTP. El transporte stdio solo funciona cuando el cliente y el servidor están en el mismo equipo.

¿Es obligatorio usar HTTPS?

Sí en la práctica. Sin HTTPS, los tokens y datos viajan sin cifrar. Usa un proxy inverso con certificado SSL, por ejemplo de Let's Encrypt.

¿Cómo protejo mi servidor MCP?

Con autenticación (OAuth 2.1 o, como mínimo, tokens), firewall, permisos mínimos para cada herramienta, confirmación humana para acciones sensibles, registros y actualizaciones constantes.

¿Dónde están ubicados los VPS de Moshipp?

Los VPS de Moshipp están en un centro de datos en Canadá (Beauharnois), con soporte técnico en español y facturación en pesos colombianos.

Conclusión

Un servidor MCP en un VPS convierte tus sistemas internos en herramientas que la IA puede usar de forma segura. La clave está en usar Streamable HTTP, publicar solo a través de HTTPS, exigir autenticación y limitar lo que cada herramienta puede hacer.

Siguiente paso

Lleva tu proyecto a un servidor preparado para crecer

Servidores Virtuales Privados con recursos garantizados, acceso root completo y escalabilidad inmediata para mayor control y rendimiento.

Siguiente paso

Sigue aprendiendo