---
id: "CVE-2026-63655"
kind: "vulnerability"
aliases: ["CVE-2026-63655"]
title: "tsParticles MCP server: unbounded request body lets remote attackers crash the service"
severity: "high"
cvss: 7.5
epss: null
exploited: false
status: "open"
category: "ai-tooling"
products: []
ecosystems: []
tags: ["ai-tooling", "docker", "mcp", "node.js", "tsparticles"]
not_affected_if: ["auth-required", "no-mcp-server", "stdio-mode"]
published_at: "2026-11-04T22:18:07+00:00"
first_seen_at: "2026-11-04T23:08:49+00:00"
updated_at: "2026-11-04T23:09:51+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-63655", "first_seen_at": "2026-11-04T23:08:49+00:00"}]
exploit_sources: []
---

# tsParticles MCP server: unbounded request body lets remote attackers crash the service

The HTTP mode of the @tsparticles/mcp-server package accepts unauthenticated POST /mcp requests and buffers the whole body without a size limit. A remote attacker can send an oversized body to exhaust Node.js memory and terminate the service.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed version of `@tsparticles/mcp-server` in your project lockfile (for example `package-lock.json` or `pnpm-lock.yaml`).
- Check whether the server runs in HTTP mode, listening on port `3000` on `0.0.0.0`, as in the official Docker configuration.

## Fix

- `@tsparticles/mcp-server` to `4.3.1` or later.

## Timeline

- 2026-11-04T23:08:49+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-63655

## Documents

- [advisory] Vendor advisory: github.com https://github.com/tsparticles/tsparticles/security/advisories/GHSA-447x-qqwf-m7xq
- [fix] Patch: github.com https://github.com/tsparticles/tsparticles/commit/25fb70e7f527a91568adaef576570289083f243b
- [fix] Patch: github.com https://github.com/tsparticles/tsparticles/commit/7b3a9488d4201fe9ddd5fec05f4a2ae65d3627ea
- [fix] Release notes: github.com https://github.com/tsparticles/tsparticles/releases/tag/v4.3.1

## From the sources

tsParticles is a TypeScript library for creating highly customizable particle animations. Prior to 4.3.1, the HTTP mode of @tsparticles/mcp-server accepts unauthenticated POST /mcp requests in integrations/mcp-server/src/index.ts and accumulates every request-body chunk in a Buffer[] without a cumulative size limit before Buffer.concat and JSON.parse. A remote attacker can stream an arbitrarily large body to exhaust Node.js process memory and terminate the service, including in the official Docker configuration that exposes HTTP mode on 0.0.0.0:3000. Confidentiality and integrity are not affected. This issue is fixed in version 4.3.1.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
