Skip to content

Migrate MCP server from deprecated SSE transport to Streamable HTTP - #2071

Open
igordayen wants to merge 1 commit into
mainfrom
fix/mcp-streamable-http
Open

igordayen wants to merge 1 commit into
mainfrom
fix/mcp-streamable-http

Conversation

@igordayen

@igordayen igordayen commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Remove McpSseShutdownConfiguration and its test — WebMvcSseServerTransportProvider is @Deprecated(forRemoval=true) in Spring AI 2.0; the graceful-shutdown workaround it provided becomes a compilation time-bomb on the next Spring AI release
  • Switch both MCP integration tests from protocol=SSE + HttpClientSseClientTransport to protocol=STREAMABLE +
    HttpClientStreamableHttpTransport, aligning tests with the Spring AI 2.0 default
  • Update integrations/page.adoc: document Streamable HTTP as the default (endpoint /mcp), remove the now-unnecessary mcp proxy workaround, and add a deprecation callout for SSE users explaining the shutdown behaviour and migration path

Impact on SSE clients

SSE transport (protocol: SSE) continues to work during normal operation. The only regression is on server shutdown: without McpSseShutdownConfiguration, Tomcat waits up to 30 s before force-closing open SSE streams rather than draining them gracefully.
This is the pre-workaround behaviour and is documented in the updated reference page. Users still on SSE should migrate to protocol: STREAMABLE.

Closes: #2047

 - Remove McpSseShutdownConfiguration (WebMvcSseServerTransportProvider is @deprecated forRemoval=true in Spring AI 2.0)
 - Switch integration tests to protocol=STREAMABLE  + HttpClientStreamableHttpTransport, and update docs
@sonarqubecloud

Copy link
Copy Markdown

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

Labels

question Further information is requested

Projects

None yet

1 participant