Skip to content

Commit 658ee7c

Browse files
authored
Merge pull request #1153 from cipherstash/fix/cip-4887-modelcontextprotocol-sdk
fix(deps): patch @modelcontextprotocol/sdk to 1.32.0
2 parents b20f31d + 9fc3b55 commit 658ee7c

5 files changed

Lines changed: 39 additions & 6 deletions

File tree

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
"@cipherstash/wizard": patch
3+
---
4+
5+
Add `@modelcontextprotocol/sdk` `^1.32.0` as a direct dependency so the
6+
auto-installed peer of `@anthropic-ai/claude-agent-sdk` resolves to a release
7+
patched against GHSA-6qxp-vccf-f47h / CVE-2026-104850, instead of the vulnerable
8+
1.29.0 previously locked. The wizard never imports the MCP SDK directly — this
9+
is a peer-resolution pin only; no API change.

‎e2e/tests/supply-chain.e2e.test.ts‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,22 @@ describe('supply chain — pnpm-lock.yaml integrity', () => {
291291
).toBe(true)
292292
}
293293
})
294+
295+
it('@modelcontextprotocol/sdk resolves to the peer-pinned patched version (≥ 1.31.0)', () => {
296+
// Peer-resolution pin, like @anthropic-ai/sdk above: languages/typescript/packages/wizard
297+
// depends on @modelcontextprotocol/sdk@^1.32.0 to force the auto-installed
298+
// peer of @anthropic-ai/claude-agent-sdk past the advisory-vulnerable range
299+
// (GHSA-6qxp-vccf-f47h / CVE-2026-104850, patched 1.31.0).
300+
const versions =
301+
resolvedVersionsByName().get('@modelcontextprotocol/sdk') ?? []
302+
expect(versions.length).toBeGreaterThan(0)
303+
for (const version of versions) {
304+
expect(
305+
semver.gte(version, '1.31.0'),
306+
`@modelcontextprotocol/sdk@${version} is below the patched 1.31.0`,
307+
).toBe(true)
308+
}
309+
})
294310
})
295311

296312
describe('supply chain — every workflow installs with --frozen-lockfile', () => {

‎languages/typescript/packages/wizard/package.json‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
"@anthropic-ai/sdk": "^0.117.1",
3535
"@cipherstash/auth": "workspace:*",
3636
"@clack/prompts": "1.7.0",
37+
"@modelcontextprotocol/sdk": "^1.32.0",
3738
"dotenv": "17.4.2",
3839
"pg": "8.23.0",
3940
"picocolors": "^1.1.1",

‎pnpm-lock.yaml‎

Lines changed: 9 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎pnpm-workspace.yaml‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ catalogs:
6666
# pnpm overrides rewrite peer ranges, not peer resolutions. It is fixed by an
6767
# explicit dependency in languages/typescript/packages/wizard — that dep is a peer-resolution pin
6868
# (wizard never imports the sdk directly); do not remove it as "unused".
69+
# The same applies to @modelcontextprotocol/sdk (alert #247,
70+
# GHSA-6qxp-vccf-f47h / CVE-2026-104850, patched 1.31.0): another auto-installed
71+
# peer of claude-agent-sdk (`^1.29.0`), pinned by the same kind of explicit
72+
# wizard dependency.
6973
overrides:
7074
# #96, #115-#127 — Next.js middleware bypass / SSRF / DoS / XSS batch
7175
# (GHSA-267c-6grr-h53f, GHSA-26hh-7cqf-hhc6, GHSA-36qx-fr4f-26g5, et al.)

0 commit comments

Comments
 (0)