Last 12 weeks · 75 commits
5 of 6 standards met
Motivation and Context The no-op handlers for , , and returned . When a client accesses the expected response structure (e.g., ), a result raises . The MCP spec requires specific response structures even for no-op handlers. Returning spec-compliant defaults ensures that clients receive valid responses without requiring servers to explicitly override each handler. now returns . ref: https://modelcontextprotocol.io/specification/2025-11-25/server/utilities/completion and now return (empty result). ref: https://modelcontextprotocol.io/specification/2025-11-25/server/resources#subscriptions How Has This Been Tested? Added a repro test to verify the fix and prevent regression. Breaking Changes None. Types of changes [x] Bug fix (non-breaking change which fixes an issue) [ ] New feature (non-breaking change which adds functionality) [ ] Breaking change (fix or feature that would cause existing functionality to change) [ ] Documentation update Checklist [x] I have read the MCP Documentation [x] My code follows the repository's style guidelines [x] New and existing tests pass locally [x] I have added appropriate error handling [x] I have added or updated documentation as needed
Repository: modelcontextprotocol/ruby-sdk. Description: The official Ruby SDK for the Model Context Protocol. Stars: 738, Forks: 97. Primary language: Ruby. Languages: Ruby (98.7%), Shell (1.3%). Homepage: https://rubygems.org/gems/mcp Latest release: v0.7.1 (1w ago). Open PRs: 16, open issues: 8. Last activity: 1w ago. Community health: 87%. Top contributors: koic, topherbullock, atesgoral, kfischer-okarin, Ginja, dak2, sambostock, andyw8, tylerrowsell, jcat4 and others.
Motivation and Context The MCP spec defines an embedded resource content type, but the SDK had no corresponding class. Add that wraps a resource object and serializes it via . https://modelcontextprotocol.io/specification/2025-11-25/server/tools#embedded-resources How Has This Been Tested? Pass the newly added tests. Breaking Changes None. Types of changes [ ] Bug fix (non-breaking change which fixes an issue) [x] New feature (non-breaking change which adds functionality) [ ] Breaking change (fix or feature that would cause existing functionality to change) [ ] Documentation update Checklist [x] I have read the MCP Documentation [x] My code follows the repository's style guidelines [x] New and existing tests pass locally [x] I have added appropriate error handling [x] I have added or updated documentation as needed
Motivation and Context returned 200 with body, but the MCP spec requires 202 with empty body when a response is sent via SSE stream. This has been a requirement since Streamable HTTP was introduced in protocol version 2025-03-26. https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#sending-messages-to-the-server https://modelcontextprotocol.io/specification/2025-11-25/basic/transports#sending-messages-to-the-server How Has This Been Tested? Added a repro test to verify the fix and prevent regression. Breaking Changes None. This fixes behavior that was incorrect with respect to the specification. Types of changes [x] Bug fix (non-breaking change which fixes an issue) [ ] New feature (non-breaking change which adds functionality) [ ] Breaking change (fix or feature that would cause existing functionality to change) [ ] Documentation update Checklist [x] I have read the MCP Documentation [x] My code follows the repository's style guidelines [x] New and existing tests pass locally [x] I have added appropriate error handling [x] I have added or updated documentation as needed