Skip to content

v0.14.0

Latest

Choose a tag to compare

@codeboyzhou codeboyzhou released this 15 May 15:32

0.14.0 (2026-05-15)

πŸš€ Breaking Changes

  • Remove deprecated McpServers β€” The deprecated McpServers type has been removed. Use McpApplication.run(Class, String[]) as the only supported entry point.
  • Rename McpServer to AnnotatedMcpServer β€” If you referenced McpServer from this library, update imports and types to AnnotatedMcpServer.

Migration Guide

If you still used McpServers (deprecated since v0.13.0):

Before (removed in v0.14.0):

McpServers.run(MyMcpServer.class, args).startStdioServer(configuration);

After (v0.14.0):

McpApplication.run(MyMcpServer.class, args);

✨ Features

  • Add asynchronous MCP server support alongside synchronous servers
  • Introduce McpApplicationContext to eliminate global mutable application state
  • Introduce McpComponentInstanceFactory to decouple MCP component instance creation
  • Add validation for merged MCP server configuration (base mcp-server.yml + profile overlays)
  • Centralize default configuration in McpServerDefaults
  • Add a unified McpServerError contract for categorized server-side failures

πŸ”§ Improvements

  • Restructure MCP component registration with shared sync/async abstractions (AbstractDualModeComponentRegistrar)
  • Replace MethodCache with MethodMetadata for reflected method metadata
  • Centralize Jetty-based HTTP server startup logic
  • Refine McpApplication initialization and default configuration loading
  • Enhance ServerMode and ServerType enums (including human-readable descriptions)
  • Align Invocation / tool invocation with the unified error contract

πŸ› Bug Fixes

  • Restore thread interrupted status when joining the Jetty server fails
  • Improve error handling when the MCP server fails to start

πŸ“¦ Dependencies

  • MCP SDK: Update to 1.1.2 (via mcp-bom)
  • Jetty: Update to 12.1.9
  • JUnit: Update to 6.1.0-RC1
  • Mockito: Update to 5.23.0
  • SpotBugs Maven Plugin: Update to 4.9.8.3
  • Maven Enforcer Plugin: Update to 3.6.2
  • SortPOM Maven Plugin: 4.0.0

πŸ”¨ Build & CI

  • Enforce Maven 3.9.13+ when building; use ./mvnw / mvnw.cmd for a reproducible toolchain (aligned with CI)
  • Bump assorted Maven plugin and dependency versions

πŸ“š Documentation

  • Align README and docs/ with implementation (YAML kebab-case keys, STREAMABLE defaults, SSE/streamable settings, annotation defaults, Completions API, structured content, and error-handling guidance)
  • Refresh llms.txt and llms-full.txt for LLM-oriented discovery
  • Clarify how to run sample apps (IDE / classpath vs expecting a single fat JAR)

πŸ™ What's Changed

This release completes the move to McpApplication-centric startup, adds async MCP server support, and tightens configuration validation and error reporting. Documentation and LLM-oriented files are synchronized with the code to reduce integration mistakes when configuring transports, completions, and tools.