{"id":"CVE-2026-111767","aliases":["CLSA-2026-1792574765","CLSA-2026-1793097252","CLSA-2026-1793100011","CLSA-2026-1793102531","CLSA-2026-1793112043","CLSA-2026-1793113170","EUVD-2026-105256","GHSA-22jm-h49p-29qw","ROOT-APP-NPM-CVE-2026-111767"],"status":"published","title":"MCP TypeScript SDK: Experimental tasks were not tied to the session that created them","description":"MCP TypeScript SDK is the official TypeScript SDK for Model Context Protocol servers and clients. From version 1.24.0 to before version 1.32.0, the experimental tasks feature (taskStore) did not check which session created a task. Clients sharing one InMemoryTaskStore could list, read and cancel each other's tasks. This issue has been patched in version 1.32.0.","severity":{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00345,"percentile":0.28423,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-639","CWE-862"],"published":"2026-10-20T18:26:54Z","modified":"2026-10-30T19:46:06Z","fixes":[{"ecosystem":"npm","package":"@modelcontextprotocol/sdk","fixed_in":["1.32.0"],"sources":["ghsa","osv"]},{"ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","fixed_in":["1.29.0-tuxcare.2","1.26.0-tuxcare.3"],"sources":["osv"]},{"ecosystem":"Root:npm","package":"@modelcontextprotocol/sdk","fixed_in":["1.30.0-aikido.2","1.26.0-aikido.2","1.31.0-aikido.1","1.29.0-aikido.2","1.26.0-aikido.3","1.26.0-aikido.4"],"sources":["osv"]},{"ecosystem":"Root:npm","package":"@rootio/modelcontextprotocol__sdk","fixed_in":["1.30.0-root.io.2","1.26.0-root.io.2","1.31.0-root.io.1","1.29.0-root.io.2","1.26.0-root.io.3","1.26.0-root.io.4"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.24.0"},{"fixed":"1.32.0"}]}]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.30.1-tuxcare.0"},{"fixed":"1.30.1-tuxcare.2"}]}],"versions":["1.30.1","1.30.1-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.29.0-tuxcare.0"},{"fixed":"1.29.0-tuxcare.2"}]}],"versions":["1.29.0","1.29.0-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.30.0-tuxcare.0"},{"fixed":"1.30.0-tuxcare.2"}]}],"versions":["1.30.0","1.30.0-tuxcare.1"],"bundled":3},{"source":"osv","ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.26.0-tuxcare.0"},{"fixed":"1.26.0-tuxcare.3"}]}],"versions":["1.26.0","1.26.0-tuxcare.1","1.26.0-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.25.2-tuxcare.0"},{"fixed":"1.25.2-tuxcare.4"}]}],"versions":["1.25.2","1.25.2-tuxcare.1","1.25.2-tuxcare.2","1.25.2-tuxcare.3"],"bundled":4},{"source":"osv","ecosystem":"TuxCare:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.24.0-tuxcare.0"},{"fixed":"1.24.0-tuxcare.4"}]}],"versions":["1.24.0","1.24.0-tuxcare.1","1.24.0-tuxcare.2","1.24.0-tuxcare.3"],"bundled":4},{"source":"osv","ecosystem":"npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"SEMVER","events":[{"introduced":"1.24.0"},{"fixed":"1.32.0"}]}]},{"source":"osv","ecosystem":"Root:npm","package":"@modelcontextprotocol/sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.30.0-aikido.2"},{"fixed":"1.26.0-aikido.2"},{"fixed":"1.31.0-aikido.1"},{"fixed":"1.29.0-aikido.2"},{"fixed":"1.26.0-aikido.3"},{"fixed":"1.26.0-aikido.4"}]}]},{"source":"osv","ecosystem":"Root:npm","package":"@rootio/modelcontextprotocol__sdk","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.30.0-root.io.2"},{"fixed":"1.26.0-root.io.2"},{"fixed":"1.31.0-root.io.1"},{"fixed":"1.29.0-root.io.2"},{"fixed":"1.26.0-root.io.3"},{"fixed":"1.26.0-root.io.4"}]}]}],"products":[{"vendor":"modelcontextprotocol","product":"typescript-sdk"}],"references":[{"url":"https://github.com/modelcontextprotocol/typescript-sdk/security/advisories/GHSA-22jm-h49p-29qw","tags":["x_refsource_CONFIRM","advisory","web"]},{"url":"https://github.com/modelcontextprotocol/typescript-sdk/pull/2925","tags":["x_refsource_MISC","fix","web"]},{"url":"https://github.com/modelcontextprotocol/typescript-sdk/commit/727075b5bbeb77fbea22041b36b72a73042160fa","tags":["x_refsource_MISC","fix","web"]},{"url":"https://github.com/advisories/GHSA-22jm-h49p-29qw"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/111xxx/CVE-2026-111767.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-111767","tags":["advisory"]},{"url":"https://github.com/modelcontextprotocol/typescript-sdk","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-111767","title":"MCP TypeScript SDK: Experimental tasks were not tied to the session that created them","description":"MCP TypeScript SDK is the official TypeScript SDK for Model Context Protocol servers and clients. From version 1.24.0 to before version 1.32.0, the experimental tasks feature (taskStore) did not check which session created a task. Clients sharing one InMemoryTaskStore could list, read and cancel each other's tasks. This issue has been patched in version 1.32.0.","status":"published","published":"2026-10-20T18:28:45.65Z","modified":"2026-10-20T19:02:40.151Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high","assessor":"cna"}],"cwes":["CWE-639","CWE-862"],"updated_at":"2026-11-02T14:20:15.34316Z"}],"euvd":[{"id":"EUVD-2026-105256","description":"MCP TypeScript SDK is the official TypeScript SDK for Model Context Protocol servers and clients. From version 1.24.0 to before version 1.32.0, the experimental tasks feature (taskStore) did not check which session created a task. Clients sharing one InMemoryTaskStore could list, read and cancel each other's tasks. This issue has been patched in version 1.32.0.","status":"published","published":"2026-10-20T18:28:45Z","modified":"2026-10-20T19:02:40Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"updated_at":"2026-11-02T16:59:43.145678Z"}],"ghsa":[{"id":"GHSA-22jm-h49p-29qw","title":"MCP TypeScript SDK: Experimental tasks were not tied to the session that created them","description":"### Summary\nIn affected versions, the experimental tasks feature (`taskStore`) did not check which session created a task. Clients sharing one `InMemoryTaskStore` could list, read and cancel each other's tasks.\n\nExperimental tasks are deprecated. The 2026-07-28 specification replaced them with a redesigned extension. The best course of action is to stop using them.\n\n### Am I affected?\nOnly if your HTTP server passes `taskStore` to `McpServer` or `Server`. If `grep -ri taskstore --exclude-dir=node_modules .` finds nothing, you are not affected.\n\nAffected versions: `@modelcontextprotocol/sdk` 1.24.0 through 1.31.0. The 2.x packages are not affected.\n\n### Fix\nUpgrade to `@modelcontextprotocol/sdk` 1.32.0 or later. Each task is now tied to the session that created it, so a client that starts a new session can no longer reach its earlier tasks.\n\nIf you cannot upgrade yet, remove `taskStore`, or create one `InMemoryTaskStore` per session.","status":"published","published":"2026-10-20T18:26:54Z","modified":"2026-10-20T18:26:55Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"cwes":["CWE-639","CWE-862"],"updated_at":"2026-11-02T14:41:33.669646Z"}],"nvd":[{"id":"CVE-2026-111767","description":"MCP TypeScript SDK is the official TypeScript SDK for Model Context Protocol servers and clients. From version 1.24.0 to before version 1.32.0, the experimental tasks feature (taskStore) did not check which session created a task. Clients sharing one InMemoryTaskStore could list, read and cancel each other's tasks. This issue has been patched in version 1.32.0.","status":"published","published":"2026-10-20T19:17:30.847Z","modified":"2026-10-20T19:53:10.247Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high","assessor":"secondary"}],"cwes":["CWE-639","CWE-862"],"updated_at":"2026-11-02T14:13:01.161484Z"}],"osv":[{"id":"CVE-2026-111767","title":"MCP TypeScript SDK: Experimental tasks were not tied to the session that created them","description":"MCP TypeScript SDK is the official TypeScript SDK for Model Context Protocol servers and clients. From version 1.24.0 to before version 1.32.0, the experimental tasks feature (taskStore) did not check which session created a task. Clients sharing one InMemoryTaskStore could list, read and cancel each other's tasks. This issue has been patched in version 1.32.0.","status":"published","published":"2026-10-20T18:28:45.65Z","modified":"2026-10-28T02:31:04.671695795Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"cwes":["CWE-639","CWE-862"],"updated_at":"2026-11-02T15:44:55.938017Z"},{"id":"GHSA-22jm-h49p-29qw","title":"MCP TypeScript SDK: Experimental tasks were not tied to the session that created them","description":"### Summary\nIn affected versions, the experimental tasks feature (`taskStore`) did not check which session created a task. Clients sharing one `InMemoryTaskStore` could list, read and cancel each other's tasks.\n\nExperimental tasks are deprecated. The 2026-07-28 specification replaced them with a redesigned extension. The best course of action is to stop using them.\n\n### Am I affected?\nOnly if your HTTP server passes `taskStore` to `McpServer` or `Server`. If `grep -ri taskstore --exclude-dir=node_modules .` finds nothing, you are not affected.\n\nAffected versions: `@modelcontextprotocol/sdk` 1.24.0 through 1.31.0. The 2.x packages are not affected.\n\n### Fix\nUpgrade to `@modelcontextprotocol/sdk` 1.32.0 or later. Each task is now tied to the session that created it, so a client that starts a new session can no longer reach its earlier tasks.\n\nIf you cannot upgrade yet, remove `taskStore`, or create one `InMemoryTaskStore` per session.","status":"published","published":"2026-10-20T18:26:54Z","modified":"2026-10-20T18:45:09.486849334Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","level":"high"}],"cwes":["CWE-639","CWE-862"],"updated_at":"2026-11-02T15:46:33.520522Z"},{"id":"CLSA-2026-1792574765","title":"TuxCare security update for @modelcontextprotocol/sdk (2 CVEs)","description":"TuxCare rebuilt @modelcontextprotocol/sdk to address 2 CVEs. Fixed in 1.30.1-tuxcare.2.","status":"published","published":"2026-10-21T09:26:05Z","modified":"2026-10-21T14:00:21.015840087Z","updated_at":"2026-11-02T15:43:54.672859Z"},{"id":"CLSA-2026-1793097252","title":"TuxCare security update for @modelcontextprotocol/sdk (1 CVE)","description":"TuxCare rebuilt @modelcontextprotocol/sdk to address 1 CVE. Fixed in 1.29.0-tuxcare.2.","status":"published","published":"2026-10-27T10:34:12Z","modified":"2026-10-27T13:30:13.02320073Z","updated_at":"2026-11-02T15:43:55.34846Z"},{"id":"CLSA-2026-1793100011","title":"TuxCare security update for @modelcontextprotocol/sdk (3 CVEs)","description":"TuxCare rebuilt @modelcontextprotocol/sdk to address 3 CVEs. Fixed in 1.30.0-tuxcare.2.","status":"published","published":"2026-10-27T11:20:11Z","modified":"2026-10-27T13:30:13.922723781Z","updated_at":"2026-11-02T15:43:55.34846Z"},{"id":"CLSA-2026-1793102531","title":"TuxCare security update for @modelcontextprotocol/sdk (1 CVE)","description":"TuxCare rebuilt @modelcontextprotocol/sdk to address 1 CVE. Fixed in 1.26.0-tuxcare.3.","status":"published","published":"2026-10-27T12:02:11Z","modified":"2026-10-27T13:30:14.983566967Z","updated_at":"2026-11-02T15:43:55.34846Z"},{"id":"CLSA-2026-1793112043","title":"TuxCare security update for @modelcontextprotocol/sdk (4 CVEs)","description":"TuxCare rebuilt @modelcontextprotocol/sdk to address 4 CVEs. Fixed in 1.25.2-tuxcare.4.","status":"published","published":"2026-10-27T14:40:43Z","modified":"2026-10-30T19:46:05.142474665Z","updated_at":"2026-11-02T15:43:55.34846Z"},{"id":"CLSA-2026-1793113170","title":"TuxCare security update for @modelcontextprotocol/sdk (4 CVEs)","description":"TuxCare rebuilt @modelcontextprotocol/sdk to address 4 CVEs. Fixed in 1.24.0-tuxcare.4.","status":"published","published":"2026-10-27T14:59:30Z","modified":"2026-10-30T19:46:06.482679292Z","updated_at":"2026-11-02T15:43:55.34846Z"},{"id":"ROOT-APP-NPM-CVE-2026-111767","title":"CVE-2026-111767 in @modelcontextprotocol/sdk - Patched by Root","description":"Root has patched CVE-2026-111767 in the @modelcontextprotocol/sdk package for Root:npm. Multiple fixed versions available.","status":"published","published":"2026-10-30T08:51:21Z","modified":"2026-10-30T09:15:37.330504012Z","updated_at":"2026-11-02T15:53:27.362922Z"}]}}
