v0.5.0
Pre-release
Pre-release
Release Notes
Breaking Changes
Transport Implementation Changes
-
Module Restructuring
- SSE transport implementations moved to dedicated modules:
mcp-webflux-sse-transport
: WebFlux-based SSE transportmcp-webmvc-sse-transport
: WebMVC-based SSE transport
- Base MCP module no longer includes transport implementations
- SSE transport implementations moved to dedicated modules:
-
Class Renames
SseClientTransport
renamed toWebFluxSseClientTransport
SseServerTransport
renamed toWebFluxSseServerTransport
Project Structure Changes
- Test utilities relocated to new
mcp-test
module - All samples moved to https://github.com/spring-projects/spring-ai-examples/tree/main/model-context-protocol
- Spring AI dependency updated to 1.0.0-M5
Migration Guide
Users will need to:
- Update dependencies to include appropriate transport modules
- Update import statements for renamed transport classes
- Modify transport instantiation code
- Add mcp-test dependency if using test utilities
Major Features & Improvements
Transport Layer Enhancements
-
New Servlet-based SSE Transport
- Added HttpServletSseServerTransport with Servlet 6.0 support
- Enables integration with any Java HTTP server supporting Servlets
- Compatible with Jakarta Servlet API 6.1.0
- Includes comprehensive integration tests with Tomcat
-
Enhanced WebMVC Transport
- Improved event delivery control and connection management
- Added dedicated session management with SSEEvent record
- Enhanced error handling and timeout management
- Includes comprehensive integration tests
Architecture & Modularity
- Transport Implementation Modularization
- Split transport implementations into dedicated modules
- Created separate modules for WebFlux and WebMVC SSE transports
- Added framework-independent SSE client implementations using java.net.http
- Introduced shared test module for common test utilities
- Maintained STDIO transport in core for basic functionality
Build & Dependency Management
- New Bill of Materials (BOM)
- Introduced mcp-bom module for centralized version management
- Simplified dependency version management across Spring AI MCP projects
- Streamlined version compatibility across components
- Updated documentation to reference the new BOM
Security Updates
- Updated Tomcat dependencies to address security vulnerabilities:
- tomcat-embed-core upgraded from 10.1.18 to 10.1.34
Compatibility Notes
- Requires Jakarta Servlet API 6.1.0 for Servlet-based transport
- Compatible with Tomcat 11.0.2 and newer
- Users should migrate to the new BOM for dependency management
Documentation Updates
- Added dependency management documentation
- Updated existing documentation to use BOM references
- Added integration examples for new transport implementations