diff --git a/README.md b/README.md index a7dc6927..d1db291d 100644 --- a/README.md +++ b/README.md @@ -148,7 +148,7 @@ server.notify_tools_list_changed() #### Rails Controller When added to a Rails controller on a route that handles POST requests, your server will be compliant with non-streaming -[Streamable HTTP](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http) transport +[Streamable HTTP](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports#streamable-http) transport requests. You can use the `Server#handle_json` method to handle requests. @@ -340,7 +340,7 @@ MCP::Server.protocol_version = nil If an invalid `protocol_version` value is set, an `ArgumentError` is raised. -Be sure to check the [MCP spec](https://modelcontextprotocol.io/specification/2025-03-26) for the protocol version to understand the supported features for the version being set. +Be sure to check the [MCP spec](https://modelcontextprotocol.io/specification) for the protocol version to understand the supported features for the version being set. ### Exception Reporting diff --git a/lib/mcp/configuration.rb b/lib/mcp/configuration.rb index 038be59a..30dcc5a6 100644 --- a/lib/mcp/configuration.rb +++ b/lib/mcp/configuration.rb @@ -2,8 +2,8 @@ module MCP class Configuration - DEFAULT_PROTOCOL_VERSION = "2024-11-05" - SUPPORTED_PROTOCOL_VERSIONS = ["2025-06-18", "2025-03-26", DEFAULT_PROTOCOL_VERSION] + DEFAULT_PROTOCOL_VERSION = "2025-06-18" + SUPPORTED_PROTOCOL_VERSIONS = [DEFAULT_PROTOCOL_VERSION, "2025-03-26", "2024-11-05"] attr_writer :exception_reporter, :instrumentation_callback, :protocol_version, :validate_tool_call_arguments diff --git a/test/mcp/server/transports/streamable_http_transport_test.rb b/test/mcp/server/transports/streamable_http_transport_test.rb index 2e86696c..34cd529c 100644 --- a/test/mcp/server/transports/streamable_http_transport_test.rb +++ b/test/mcp/server/transports/streamable_http_transport_test.rb @@ -84,7 +84,7 @@ class StreamableHTTPTransportTest < ActiveSupport::TestCase body = JSON.parse(response[2][0]) assert_equal "2.0", body["jsonrpc"] assert_equal "123", body["id"] - assert_equal "2024-11-05", body["result"]["protocolVersion"] + assert_equal "2025-06-18", body["result"]["protocolVersion"] end test "handles GET request with valid session ID" do diff --git a/test/mcp/server_test.rb b/test/mcp/server_test.rb index e1b12d34..3e5853f0 100644 --- a/test/mcp/server_test.rb +++ b/test/mcp/server_test.rb @@ -114,7 +114,7 @@ class ServerTest < ActiveSupport::TestCase jsonrpc: "2.0", id: 1, result: { - protocolVersion: "2024-11-05", + protocolVersion: "2025-06-18", capabilities: { prompts: { listChanged: true }, resources: { listChanged: true },