7 Vulnerabilidades de la Pasarela MCP: Fugas de Sesión, SSE Muerto y OAuth en Modo Pasarela

Después de las demostraciones del camino feliz, un usuario de Reddit encontró siete errores específicos al poner una puerta de enlace MCP entre clientes y servidores reales. Las soluciones no fueron ingeniería de prompts — fueron límites de sesión explícitos, timeouts por herramienta, idempotencia, registros de acciones estructurados, trazas a nivel de puerta de enlace y pruebas contra llamadas concurrentes a herramientas. El resultado fue una gran reducción en el tiempo de ejecución paralela de herramientas, pero la mayor victoria fue saber dónde residía el fallo.
Los siete errores que realmente importaban
- Fuga de estado de sesión entre clientes — el estado compartido entre sesiones provocó contaminación de datos.
- Conexiones SSE que mueren silenciosamente — no surgía ningún error cuando una conexión de eventos enviada por el servidor se caía.
- Flujos OAuth que funcionan en pruebas locales pero se rompen en modo puerta de enlace — las URI de redirección o la validación de tokens fallaban detrás del proxy.
- Sondas de descubrimiento que devuelven metadatos obsoletos del servidor — las capacidades en caché no reflejaban las actualizaciones del servidor.
- Escrituras SQLite que bloquean llamadas paralelas a herramientas — los bloqueos de base de datos serializaban las solicitudes concurrentes.
- Lógica de reintento que duplica efectos secundarios de herramientas — los reintentos reejecutaban mutaciones como escrituras o llamadas API.
- Latencia de herramientas oculta dentro de la puerta de enlace en lugar de la llamada al modelo — el monitoreo atribuía el tiempo a la capa incorrecta.
La solución: infraestructura aburrida, no mejores prompts
El enfoque del autor para cada error:
- Límites de sesión explícitos — estado separado por cliente, sin objetos compartidos.
- Política de timeout por herramienta — timeouts individuales para evitar que una herramienta lenta retenga a otras.
- Idempotencia cuando sea posible — claves de deduplicación o comportamiento transaccional para hacer seguros los reintentos.
- Registros de acciones estructurados — registros detallados y analizables de cada acción de la puerta de enlace para depuración.
- Trazas a nivel de puerta de enlace — trazado distribuido para atribuir correctamente la latencia entre capas.
- Pruebas contra llamadas concurrentes a herramientas — pruebas de integración que disparan solicitudes paralelas para detectar condiciones de carrera.
Estos son patrones específicos y prácticos para cualquiera que ejecute una puerta de enlace MCP en producción. La idea clave del post: los problemas difíciles son el aislamiento de estado, los fallos silenciosos y la observabilidad — no los prompts del modelo.
📖 Lee la fuente completa: r/ClaudeAI
👀 Ver también

La tendencia de Claude Code a validar suposiciones defectuosas y sugerir soluciones alternativas
Un desarrollador informa que Claude Code implementará con entusiasmo arquitecturas defectuosas sin cuestionar suposiciones incorrectas, lo que lleva a una pérdida de tiempo en depuración. La solución es agregar explícitamente "asume que podría estar equivocado sobre el enfoque" a solicitudes complejas.

Ejecutando OpenClaw dentro del contenedor Docker de Ollama para una red más simple
Un usuario de Reddit muestra cómo instalar OpenClaw dentro del contenedor Docker oficial ollama/ollama para que OpenClaw se comunique con Ollama a través de localhost, evitando host.docker.internal y configuración de red adicional. La desventaja es un mayor uso de RAM.

La auditoría de tokens de Claude Code revela costos ocultos por la carga predeterminada de herramientas.
Un desarrollador analizó 926 sesiones de Claude Code y encontró 45,000 tokens cargados al inicio de cada sesión, con 20,000 tokens provenientes de definiciones de esquemas de herramientas del sistema. Habilitar la configuración ENABLE_TOOL_SEARCH redujo el contexto inicial de 45k a 20k tokens, ahorrando 14,000 tokens por turno.

Presupuesto de la API de OpenClaw Agotado: Configuraciones que Debes Cambiar Inmediatamente
La función Heartbeat predeterminada de OpenClaw puede agotar los presupuestos de API al verificar tareas cada 30 minutos y cargar archivos de contexto completos, memoria e historial de chat cada vez. La fuente recomienda cambiar las Horas Activas, usar modelos base más económicos, cambiar manualmente a modelos premium solo cuando sea necesario y usar /new para reiniciar sesiones.