Skip to content

chore: deprecate the SSE transport - #1130

Open
devcrocod wants to merge 2 commits into
mainfrom
devcrocod/deprecate-sse-transport
Open

devcrocod wants to merge 2 commits into
mainfrom
devcrocod/deprecate-sse-transport

Conversation

@devcrocod

Copy link
Copy Markdown
Contributor

Marks the SSE transport API @Deprecated(WARNING) in favor of Streamable HTTP, per SEP-2596: SseClientTransport, mcpSseTransport, mcpSse, SseServerTransport, Route.mcp, Application.mcp. No behavior change.

Closes #1059

@devcrocod
devcrocod requested review from e5l and a balanced review from Copilot October 19, 2026 20:38

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Deprecation warnings omit the removal release explicitly required by issue #1059.

1 open issue
What changed in this PR

Deprecates the SDK’s legacy SSE transport in favor of Streamable HTTP, preserving runtime behavior.

Changes:

  • Adds warning-level deprecations to SSE transports and Ktor helpers.
  • Updates documentation to recommend Streamable HTTP.
  • Suppresses deprecation warnings in existing tests.
File Description
README.md Adds SSE deprecation notice.
kotlin-sdk-server/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​server/​SseServerTransportTest.kt Suppresses SSE warnings.
kotlin-sdk-server/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​server/​KtorExtensionsTest.kt Suppresses deprecated helper warnings.
kotlin-sdk-server/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​server/​DnsRebindingProtectionTest.kt Suppresses SSE route warnings.
kotlin-sdk-server/​src/​commonMain/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​server/​SSEServerTransport.kt Deprecates server transport.
kotlin-sdk-server/​src/​commonMain/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​server/​KtorServer.kt Deprecates SSE hosting helpers.
kotlin-sdk-server/​Module.md Documents SSE deprecation.
kotlin-sdk-client/​src/​commonTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​client/​sse/​SseClientTransportTest.kt Suppresses SSE warnings.
kotlin-sdk-client/​src/​commonMain/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​client/​SseClientTransport.kt Deprecates client transport.
kotlin-sdk-client/​src/​commonMain/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​client/​KtorClient.kt Deprecates SSE client helpers.
kotlin-sdk-client/​Module.md Recommends Streamable HTTP.
integration-test/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​integration/​TransportIntegrationTest.kt Uses SSE factory; suppresses warnings.
integration-test/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​integration/​sse/​SseSubpathTest.kt Suppresses SSE warnings.
integration-test/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​integration/​sse/​SseAuthenticationTest.kt Suppresses SSE warnings.
integration-test/​src/​jvmTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​integration/​ClientDisconnectIntegrationTest.kt Suppresses SSE helper warnings.
integration-test/​src/​commonTest/​kotlin/​io/​modelcontextprotocol/​kotlin/​sdk/​client/​SseTransportTest.kt Suppresses SSE warnings.
docs/​moduledoc.md Switches hosting example to Streamable HTTP.

Review effort: Balanced

@jetbrains-air jetbrains-air Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for getting the SSE deprecation in early — just one thing on the migration advice to sort out before this merges.


Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=1ac3b735-9219-4a18-8936-38b18e109769

Copilot AI balanced review requested due to automatic review settings October 22, 2026 14:30
The MCP specification deprecates the SSE transport (SEP-2596). Its API
is now `@Deprecated` at `WARNING` level and points to Streamable HTTP:
`SseClientTransport`, `HttpClient.mcpSseTransport`, `HttpClient.mcpSse`,
`SseServerTransport`, `Route.mcp` and `Application.mcp`. No behavior
change.

The SDK's own SSE code and the SSE tests suppress the warning where they
use the deprecated API, so the suppressions go away together with SSE.
README and the module docs mark SSE as deprecated.

Closes #1059
…leHttpServerTransport` instead of `Application.mcpStreamableHttp`, aligning with MCP specification
@devcrocod
devcrocod force-pushed the devcrocod/deprecate-sse-transport branch from 709bea9 to fced5e6 Compare October 22, 2026 14:33

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The changes are limited to warning-level deprecations, documentation, and equivalent test setup, with no unresolved blocking issues.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings October 22, 2026 14:39

@jetbrains-air jetbrains-air Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good — the SSE deprecation reads cleanly and the migration guidance now points somewhere usable, so this is good to merge.


Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=a133e2f3-1679-480a-90c7-d42ee3079d95

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The scoped deprecations and documentation updates preserve runtime behavior, with no unresolved blocking issues identified in static review.

No open issues 🎉

Review effort: Balanced

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Deprecate the SSE transport

2 participants