ruby-sdk/lib/mcp
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Koichi ITO f13522d416 Validate protocol_version value
## Motivation and Context

Currently, MCP supports the following three protocol versions:
"2025-06-18", "2025-03-26", and "2024-11-05".
https://modelcontextprotocol.io/introduction

As shown in the changes to `test/mcp/configuration_test.rb`,
the `protocol_version` value is not currently being validated,
which allows unexpected `protocol_version` values to be accepted.

This PR ensures that only supported protocol versions are accepted.

## How Has This Been Tested?

Existing tests have been updated and new tests have been added.

## Breaking Changes

None. If it becomes an issue, it means a value that was not originally intended has been used.

## Additional context

While one possible approach might be to fall back to a default protocol version
when an invalid `protocol_version` value is provided,
this PR opts to reject invalid `protocol_version` values explicitly.
The reasoning is that encouraging users to provide intentional,
valid input is preferable to silently falling back to a default,
which could lead to unexpected behavior.
2025-07-16 12:38:49 +09:00
..
prompt stop using shared dir 2025-05-30 14:33:22 -04:00
resource stop using shared dir 2025-05-30 14:33:22 -04:00
server Rename to MCP when handling exceptions in Streamable HTTP transport 2025-06-15 15:21:22 +09:00
tool fixes input schema validation for schemas without required fields 2025-07-11 11:27:59 +02:00
transports Add a migration path for Server::Transports::StdioTransport 2025-06-10 16:27:22 +09:00
configuration.rb Validate protocol_version value 2025-07-16 12:38:49 +09:00
content.rb stop using shared dir 2025-05-30 14:33:22 -04:00
instrumentation.rb stop using shared dir 2025-05-30 14:33:22 -04:00
methods.rb Add missing checks 2025-06-15 17:35:18 +09:00
prompt.rb Refactor MCP tool and server to handle optional server_context parameter 2025-06-10 15:40:28 -04:00
resource.rb Merge pull request #34 from koic/make_some_optional_kwargs_in_resource 2025-05-31 13:34:25 -04:00
resource_template.rb stop using shared dir 2025-05-30 14:33:22 -04:00
server.rb Add define_custom_method to define custom methods 2025-07-14 20:12:29 -04:00
string_utils.rb stop using shared dir 2025-05-30 14:33:22 -04:00
tool.rb Refactor MCP tool and server to handle optional server_context parameter 2025-06-10 15:40:28 -04:00
transport.rb Addressing feedback 2025-06-11 13:44:54 -07:00
version.rb Bump version 2025-07-15 15:40:15 -04:00