This release includes breaking changes for platform teams planning a safe upgrade.
Published 7mo
MCP Developer Tools
✓ No known CVEs patched
✓ No known CVEs patched in this version
Topics
mcp
mcp-client
mcp-sdk
mcp-server
mcp-servers
rust
Summary
AI summaryExplicit transport selection via transports attribute and unconditional schema generation
Full changelog
Added
- Explicit Transport Selection with
transportsAttribute: New optional macro parameter for specifying which transports a server uses- Reduces generated code by only creating methods for specified transports
- Eliminates cfg warnings on Nightly Rust when transports are specified
- Supported values:
stdio,http,websocket,tcp,unix - Example:
#[server(name = "my-server", version = "0.1.0", transports = ["stdio"])] - Compile-time validation with helpful error messages
- Fully backward compatible (omitting attribute generates all transports as before)
Changed
-
Schema-Generation Now Unconditional: Moved
schemarsfrom optional to always-enabled dependency- Schema generation is now available by default (required for MCP spec compliance)
- Only affects build-time dependencies (zero runtime overhead)
- Simplified mental model: users don't have to remember to enable schema-generation feature
- Still works with
default-features = falseif needed
-
Macro Warnings Strategy: Removed
#[allow(unexpected_cfgs)]from generated code- Cfg warnings on Nightly Rust now provide actionable guidance
- Guides users toward explicit transport specification
- Cleaner design: warnings point to solutions rather than hiding issues
- Stable Rust (1.89+) unaffected (no warnings by default)
Fixed
- Code Quality: Removed anti-pattern of suppressing warnings in generated code
- Schema Module: Removed fallback implementations and unused cfg guards
Technical Details
- Added transport validation in
attrs.rs - Conditional method generation in
bidirectional_wrapper.rs - Wire transport attribute through macro pipeline in
server.rsandcompile_time_router.rs - Added comprehensive
examples/transports_demo.rsshowing all usage patterns
Backward Compatibility
- ✅ Zero breaking changes
- ✅ All existing code continues to work
- ✅ Fully backward compatible with 2.0.3
Special Thanks:
https://github.com/IgnisDa for #1
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Beta — feedback welcome: [email protected]