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:
| Transporte | Cómo funciona | Cuándo usarlo |
|---|---|---|
| stdio | El cliente lanza el servidor como proceso local y se comunican por entrada/salida estándar | Uso personal en el mismo computador |
| Streamable HTTP | El servidor escucha en una URL HTTP y atiende a clientes remotos | Servidores 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:
| Escenario | Recursos sugeridos |
|---|---|
| 1–3 servidores MCP ligeros (consultas a APIs) | 2 vCore, 4 GB RAM |
| MCP + base de datos + n8n | 2–4 vCore, 6–8 GB RAM |
| Procesamiento de documentos o búsqueda vectorial | 4+ 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




