Hosting de un servidor MCP: alojado, autoalojado o serverless
Elige alojado cuando tu agente necesite OAuth, refresco de tokens y una disponibilidad que no quieras cargar tú. Elige autoalojado cuando los datos no puedan salir de tu red. Serverless queda en medio, y se volvió más fácil en 2026: la revisión del 28 de julio eliminó las sesiones a nivel de protocolo, así que un servidor MCP remoto ya puede ser sin estado.
Qué significa alojar un servidor MCP tras la spec 2026-07-28
Un servidor MCP responde JSON-RPC sobre uno de dos bindings. En stdio, tu cliente lo lanza como subproceso en la misma máquina. En Streamable HTTP, es un servicio web con un único endpoint POST. El hosting solo es un problema con el segundo.
La revisión 2026-07-28 cambió lo que ese servicio tiene que guardar en memoria. Eliminó las sesiones a nivel de protocolo y el stream GET independiente, y movió la versión del protocolo y las capacidades del cliente a campos _meta por petición que el transporte refleja en cabeceras HTTP. Las revisiones anteriores, de la 2025-03-26 a la 2025-11-25, hacían lo contrario: el servidor podía emitir un Mcp-Session-Id, el cliente podía reabrir un stream de larga duración con GET, y los streams eran reanudables con Last-Event-ID. Ninguno de esos mecanismos existe en la revisión actual, y un servidor que solo habla esa revisión debería responder a GET o DELETE en el endpoint MCP con un 405 Method Not Allowed.
Ese único cambio es casi toda la historia del hosting. Un servidor sin estado de sesión es un servicio HTTP sin estado normal: pon cuatro réplicas detrás de un balanceador, despliega en mitad de una conversación, pierde una instancia, y ningún cliente tiene que reconectar. Un servidor que todavía habla las revisiones de 2025 tiene que enrutar cada petición de vuelta a la instancia que guarda esa sesión, y por eso tantos despliegues remotos tempranos eran una sola máquina con sesiones pegajosas y un dueño nervioso.
Dos salvedades que conviene conocer antes de planificar capacidad. Los streams ya no son reanudables, así que una conexión cortada significa que el cliente reemite la petición en vez de retomar donde se quedó. Y las notificaciones de cambio de larga duración ahora viajan por el stream de respuesta de una petición subscriptions/listen, que es un stream que sí tienes que mantener abierto, con comentarios de keep-alive, todo el tiempo que el cliente escuche.
Servidor MCP remoto o local: qué cambia de verdad
Un servidor stdio local hereda tu máquina: tu sistema de archivos, tus variables de entorno, tu red. Las credenciales vienen del entorno, y la spec dice explícitamente que las implementaciones stdio no deberían seguir el flujo OAuth. Por eso un servidor local es rápido de construir e imposible de compartir.
En cuanto el servidor pasa a ser remoto, cuatro cosas caen sobre quien lo opera:
- Identidad. Los servidores sobre HTTP son resource servers de OAuth 2.1. Tienen que implementar Protected Resource Metadata (RFC 9728), validar que cada token se emitió para ellos como audiencia, según la spec de autorización, y devolver
401con una cabeceraWWW-Authenticateque lleve la URLresource_metadatay elscoperequerido. - Tokens de plataforma. El token del agente le abre tu servidor. Tu servidor sigue necesitando sus propias credenciales para todo con lo que habla, y esas caducan según el calendario de otra gente.
- Logs. Una llamada a una herramienta que publicó algo es una acción en el mundo. Sin registro por llamada no puedes responder qué hizo el agente a las 3 de la mañana.
- Disponibilidad. Un agente que no puede alcanzar el servidor no se degrada con elegancia, informa de que la herramienta no existe.
El trabajo que nadie cuenta en un servidor MCP alojado
El baile de OAuth es la parte que la gente estima, y no es la parte cara. Las partes caras son las que no tienen fecha de fin.
El refresco de tokens es lo primero. Cada plataforma que conectas te devuelve una credencial con su propia vida útil y su propio ritual de renovación, y una caducidad silenciosa se parece exactamente a un bug en tu agente. La propia documentación de WhatsApp de PlugKit lo dice en concreto: conecta un número real, porque un número de prueba de Meta trae un token de 24 horas y deja de funcionar al día siguiente.
La segunda es el bucle de consentimiento. Los tokens caducan, la gente revoca apps, y los scopes resultan demasiado estrechos. La spec tiene un camino para el último caso: el servidor responde 403 con error="insufficient_scope" y los scopes necesarios, y el cliente ejecuta un flujo de step-up pidiendo la unión de lo que tenía y lo que se acaba de exigir. Implementa eso mal y tus usuarios viven en un bucle de redirección.
La tercera es simplemente estar alcanzable. Los agentes reintentan, y un agente que reintenta una herramienta de publicación no es un evento idempotente.
Alojado, autoalojado o serverless
| Lo que cargas tú | Alojado | Autoalojado | Serverless |
|---|---|---|---|
| Suelo mensual | una suscripción, PlugKit Creator cuesta $49 al mes por 5 cuentas conectadas | una VM o un clúster más tus horas | facturación por petición, casi cero en reposo |
| Resource server de OAuth 2.1 | hecho por el proveedor | tuyo de construir y de mantener al día con la spec | tuyo, más un almacén de tokens fuera de la función |
| Refresco de tokens de plataforma | hecho por el proveedor, en silencio | un trabajo en segundo plano que tienes que vigilar | necesita estado duradero, así que no es realmente serverless |
| Registro de auditoría de llamadas a herramientas | la del proveedor, legible | tuyo | tuyo, y repartido entre invocaciones |
Streams subscriptions/listen de larga duración |
problema del proveedor | bien | incómodo, la mayoría de plataformas limitan el tiempo de ejecución |
| Residencia de los datos | región del proveedor | donde tú quieras | región del proveedor |
| A quién llaman a las 3 de la mañana | el proveedor | tú | tú, pero menos a menudo |
Serverless parece lo más barato y a menudo lo es, para un servidor de solo lectura sobre una API pública sin credenciales que guardar. Añade OAuth y tokens de plataforma refrescables y has vuelto a meter una base de datos, un planificador y un almacén de secretos, que es justo la infraestructura que estabas evitando. Añade un stream de notificaciones abierto y te chocas con los límites de tiempo de ejecución.
El autoalojado gana con dos argumentos, y son buenos: los datos de verdad no pueden salir de tu red, o las herramientas que expones son tuyas y nadie las vende. Si se aplica alguno, alójalo tú y presupuesta el trabajo de OAuth como trabajo real.
Dónde encaja PlugKit, y cuándo es la respuesta equivocada
PlugKit es el caso alojado para un trabajo concreto: darle a un agente tus cuentas sociales. El servidor vive en https://api.plugkit.co/mcp, habla Streamable HTTP, es sin estado y expone 103 tools más tres workflows ya preparados, verificado en docs.plugkit.co el 21 de octubre de 2026. La autenticación es OAuth 2.1 con PKCE y sin client secret, con dos scopes: mcp:read para perfiles, cuentas, posts, conversaciones y analíticas, mcp:write para añadir publicación, mensajería, respuestas a comentarios y conexión de cuentas. Los clientes sin OAuth envían una clave de API como bearer token, que tiene acceso completo y ningún scope.
Añadirlo a Claude Code es una línea:
claude mcp add -t http plugkit https://api.plugkit.co/mcp
Cuesta $49 al mes por 5 cuentas conectadas o $97 por 30, cancelas cuando quieras, después de 7 días gratis sin tarjeta y con una cuenta conectada durante la prueba. Una salvedad honesta de la misma documentación: el servidor le pide al modelo que consiga tu aprobación antes de una escritura pública, y eso es una instrucción a nivel de prompt, no un control impuesto. Si eso te importa, concede mcp:read y deja las escrituras detrás de tu propio código.
PlugKit es la respuesta equivocada cuando las herramientas que quieres no son cuentas sociales, cuando tus reglas de cumplimiento dicen que los tokens se quedan en tu VPC, o cuando quieres publicación determinista sin modelo en el bucle. El último caso es una llamada REST, no un servidor MCP, y el compromiso está planteado en MCP o API REST para tu agente. Para la mecánica de autenticación en detalle, lee OAuth para servidores MCP. Para ver cómo se ve en la práctica un servidor alojado de una sola plataforma, el servidor MCP de Instagram, y para ver quién más ofrece uno, la comparativa de servidores MCP para redes sociales.
Preguntas frecuentes
¿Necesito alojar un servidor MCP siquiera?
No si corre en tu propia máquina para tu propio uso. Un servidor stdio que lanza tu cliente no necesita hosting ni OAuth, y lee las credenciales del entorno. Necesitas hosting en el momento en que una segunda persona, un teléfono o un agente en la nube tiene que alcanzar las mismas herramientas.
¿Puede un servidor MCP ser sin estado?
Desde la revisión 2026-07-28, sí. Esa revisión quitó las sesiones a nivel de protocolo y el stream GET, así que cada POST lleva sus propios metadatos y cualquier instancia puede responderlo. Los servidores que siguen soportando las revisiones de 2025 guardan estado de sesión y necesitan enrutado pegajoso.
¿Qué hace de verdad un servidor MCP alojado que yo tendría que construir si no?
El resource server de OAuth 2.1 con Protected Resource Metadata y validación de audiencia, el bucle de refresco para cada token de plataforma, el registro de auditoría por llamada, el flujo de step-up cuando falta un scope, y la disponibilidad. Lo primero es un sprint; el resto no termina nunca.
¿Serverless encaja bien con MCP?
Para un servidor de solo lectura sin credenciales guardadas, sí. En cuanto necesitas OAuth, tokens refrescables o un stream subscriptions/listen abierto, necesitas estado duradero y conexiones largas, y acabas reconstruyendo un servidor con pasos extra.
¿Cómo apunto un cliente a un servidor MCP remoto?
Dale la URL del endpoint. En Claude Code, claude mcp add -t http <name> <url>. En las apps de Claude, Customize, luego Connectors, luego un conector personalizado. En Cursor o VS Code, un enlace de instalación de un clic o tres líneas de JSON. El cliente descubre el servidor de autorización a partir del 401 que devuelve el endpoint.
Un solo plug para cada plataforma que toca tu agente
49 $ al mes por 5 cuentas conectadas, cancela cuando quieras. Todas las funciones en todos los planes.
Consigue tu clave de API →