Repository navigation
Conversation
There was a problem hiding this comment.
🟡 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
There was a problem hiding this comment.
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
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
709bea9 to
fced5e6
Compare
There was a problem hiding this comment.
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

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