MCP TypeScript SDK: Una solicitud HTTP dentro del límite de tamaño predeterminado podía agotar la memoria del servidor durante la validación
Resumen
En las versiones afectadas, los servidores no limitaban cuántos elementos de array y claves de objeto validaban en una sola solicitud. Una solicitud HTTP dentro del límite de tamaño predeterminado de 4 MiB podía agotar la memoria del servidor, provocando que el proceso finalizara con JavaScript heap out of memory.
No se requieren credenciales, a menos que autentique las solicitudes antes de que lleguen al SDK.
¿Estoy afectado?
Sí, si clientes en los que no confía plenamente pueden comunicarse con su servidor a través de HTTP. El riesgo es mayor para herramientas McpServer cuya entrada contiene un array o un registro. Los servidores que usan únicamente stdio no se ven afectados.
Versiones afectadas:
@modelcontextprotocol/sdk1.3.0 hasta 1.31.0@modelcontextprotocol/server2.0.0 hasta 2.2.0
Qué hacer
Solución
Actualice a:
- 1.x:
@modelcontextprotocol/sdk1.32.0 o posterior - 2.x:
@modelcontextprotocol/server2.3.0 o posterior
Actualizar por sí solo no cambia nada. Las versiones corregidas agregan una opción de McpServer, maxToolInputElements, que está desactivada de forma predeterminada. Realice estos dos cambios:
- Establezca
maxToolInputElementsjusto por encima de la entrada más grande que requieran sus herramientas, por ejemplonew McpServer(info, { maxToolInputElements: 10_000 }). Cuenta los elementos de array y las claves de objeto en los argumentos de una llamada. Una llamada que supere el límite recibe un resultadoisError: true. - Reduzca el límite de tamaño de la solicitud a lo que sus herramientas necesiten. La opción solo cubre los argumentos de las herramientas, mientras que el límite de tamaño cubre todo lo demás. Configure
maxRequestBodySizeen el transporte ocreateMcpHandler(). Si analiza el cuerpo manualmente, por ejemplo conexpress.json()o Fastify, configure el límite de dicho analizador.
Si aún no puede actualizar, aplique el segundo cambio. maxRequestBodySize requiere @modelcontextprotocol/sdk 1.30.1 o @modelcontextprotocol/server 2.1.0. Por debajo de eso, utilice un proxy inverso.
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Paquete de npm | @modelcontextprotocol/sdk | >= 1.3.0, < 1.32.0 | 1.32.0 |
| Paquete de npm | @modelcontextprotocol/server | >= 2.0.0, < 2.3.0 | 2.3.0 |
Referencias
- https://github.com/modelcontextprotocol/typescript-sdk/security/advisories/GHSA-46jr-4wx8-v453
- https://github.com/modelcontextprotocol/typescript-sdk/pull/2926
- https://github.com/modelcontextprotocol/typescript-sdk/pull/2927
- https://github.com/modelcontextprotocol/typescript-sdk/commit/6d8dbc6cb590edf766fcb66b636ca6b654e99c37
- https://github.com/modelcontextprotocol/typescript-sdk/commit/fd26801b3b387742fe24a90ed4b275dd6072209f
- https://github.com/modelcontextprotocol/typescript-sdk
- Vector CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H- Debilidad (CWE)
CWE-770- Plataforma
- npm
- Paquete
@modelcontextprotocol/sdk, @modelcontextprotocol/server- Publicada
- 20.10.2026
- Actualizado
- 20.10.2026 23:21
Fuentes y licencias · Editado o traducido por DockRay; se mantienen los derechos y las licencias de las fuentes.
OSV / GitHub Advisory Database - GHSA-46jr-4wx8-v453 - CC BY 4.0
Historial de vulnerabilidades: @modelcontextprotocol/sdk
Todas las vulnerabilidades publicadas de este paquete (Paquete de npm), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 8
- Primera → última
- 12.2025 10.2026
- Sin corrección
- 0
- Explotada en ataques
- 0
Distribución por gravedad
- Alta 6
- Media 2
Divulgaciones por año
- 2025: 1
- 2026: 7
-
MCP TypeScript SDK: Una solicitud HTTP dentro del límite de tamaño predeterminado podía agotar la memoria del servidor durante la validación esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.