From 6f5ee9cec94cdb3544c4c541e6f92ce4a614d9f4 Mon Sep 17 00:00:00 2001 From: Felix Weinberger Date: Wed, 15 Apr 2026 11:58:32 +0000 Subject: [PATCH 1/2] feat(compat): add StreamableHTTPServerTransport alias and EventStore type re-exports to @modelcontextprotocol/node v1 code imports `StreamableHTTPServerTransport`, `EventStore`, `EventId`, and `StreamId` from `@modelcontextprotocol/sdk/server/streamableHttp.js`. Re-export them from `@modelcontextprotocol/node` (alias is `@deprecated`, types pass through from `@modelcontextprotocol/server`) so the migration is a package-name swap. --- .changeset/node-transport-v1-aliases.md | 5 +++++ packages/middleware/node/src/index.ts | 7 +++++++ packages/middleware/node/test/compat.test.ts | 19 +++++++++++++++++++ 3 files changed, 31 insertions(+) create mode 100644 .changeset/node-transport-v1-aliases.md create mode 100644 packages/middleware/node/test/compat.test.ts diff --git a/.changeset/node-transport-v1-aliases.md b/.changeset/node-transport-v1-aliases.md new file mode 100644 index 000000000..f404d0925 --- /dev/null +++ b/.changeset/node-transport-v1-aliases.md @@ -0,0 +1,5 @@ +--- +'@modelcontextprotocol/node': patch +--- + +Add v1-compat re-exports: `StreamableHTTPServerTransport` (alias for `NodeStreamableHTTPServerTransport`) and the `EventStore` / `EventId` / `StreamId` types, so v1 imports from `@modelcontextprotocol/sdk/server/streamableHttp.js` map cleanly onto `@modelcontextprotocol/node`. diff --git a/packages/middleware/node/src/index.ts b/packages/middleware/node/src/index.ts index 2e0d3c995..6316b6c28 100644 --- a/packages/middleware/node/src/index.ts +++ b/packages/middleware/node/src/index.ts @@ -1 +1,8 @@ export * from './streamableHttp.js'; + +// v1-compat re-exports. +export { + /** @deprecated Use {@linkcode NodeStreamableHTTPServerTransport}. */ + NodeStreamableHTTPServerTransport as StreamableHTTPServerTransport +} from './streamableHttp.js'; +export type { EventId, EventStore, StreamId } from '@modelcontextprotocol/server'; diff --git a/packages/middleware/node/test/compat.test.ts b/packages/middleware/node/test/compat.test.ts new file mode 100644 index 000000000..eb6759223 --- /dev/null +++ b/packages/middleware/node/test/compat.test.ts @@ -0,0 +1,19 @@ +import { describe, expect, expectTypeOf, it } from 'vitest'; + +import { NodeStreamableHTTPServerTransport, StreamableHTTPServerTransport } from '../src/index.js'; +import type { EventId, EventStore, StreamId } from '../src/index.js'; + +describe('v1 compat exports from @modelcontextprotocol/node', () => { + it('StreamableHTTPServerTransport aliases NodeStreamableHTTPServerTransport', () => { + expect(StreamableHTTPServerTransport).toBe(NodeStreamableHTTPServerTransport); + expectTypeOf().toEqualTypeOf(); + }); + + it('re-exports EventStore / EventId / StreamId types', () => { + // Type-level assertions: these compile only if the types are exported. + expectTypeOf().toBeString(); + expectTypeOf().toBeString(); + expectTypeOf().toHaveProperty('storeEvent'); + expectTypeOf().toHaveProperty('replayEventsAfter'); + }); +}); From 55d3879aabf27997ce0db3ab51c166b647e0886b Mon Sep 17 00:00:00 2001 From: Felix Weinberger Date: Thu, 16 Apr 2026 20:46:48 +0000 Subject: [PATCH 2/2] fix: use const+type alias so @deprecated survives dts bundling --- packages/middleware/node/src/index.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/middleware/node/src/index.ts b/packages/middleware/node/src/index.ts index 6316b6c28..969852266 100644 --- a/packages/middleware/node/src/index.ts +++ b/packages/middleware/node/src/index.ts @@ -1,8 +1,10 @@ +import { NodeStreamableHTTPServerTransport } from './streamableHttp.js'; + export * from './streamableHttp.js'; -// v1-compat re-exports. -export { - /** @deprecated Use {@linkcode NodeStreamableHTTPServerTransport}. */ - NodeStreamableHTTPServerTransport as StreamableHTTPServerTransport -} from './streamableHttp.js'; +/** @deprecated Use {@linkcode NodeStreamableHTTPServerTransport}. */ +export const StreamableHTTPServerTransport = NodeStreamableHTTPServerTransport; +/** @deprecated Use {@linkcode NodeStreamableHTTPServerTransport}. */ +export type StreamableHTTPServerTransport = NodeStreamableHTTPServerTransport; + export type { EventId, EventStore, StreamId } from '@modelcontextprotocol/server';