Version 1.8.0 brings in support for 2025-03-26's Streamable HTTP transport, but it doesn't seem to have 2025-03-26 listed as a supported version.
On initialization, the server's response is validated here:
|
if result.protocolVersion not in SUPPORTED_PROTOCOL_VERSIONS: |
|
raise RuntimeError( |
|
"Unsupported protocol version from the server: " |
|
f"{result.protocolVersion}" |
|
) |
Where SUPPORTED_PROTOCOL_VERSION is defined here:
|
SUPPORTED_PROTOCOL_VERSIONS: tuple[int, str] = (1, LATEST_PROTOCOL_VERSION) |
And, finally, LATEST_PROTOCOL_VERSION is here:
|
LATEST_PROTOCOL_VERSION = "2024-11-05" |
Which means that the SDK supports (1, 2024-11-05).
I haven't done a full diff of the changes in 2025-03-26 to determine if they're supported in the SDK, but the version negotiation phase of the spec means that this SDK will be unable to communicate with any server that only supports 2025-03-26.
Is this expected?
Version 1.8.0 brings in support for 2025-03-26's Streamable HTTP transport, but it doesn't seem to have
2025-03-26listed as a supported version.On initialization, the server's response is validated here:
python-sdk/src/mcp/client/session.py
Lines 145 to 149 in ed25167
Where
SUPPORTED_PROTOCOL_VERSIONis defined here:python-sdk/src/mcp/shared/version.py
Line 3 in ed25167
And, finally,
LATEST_PROTOCOL_VERSIONis here:python-sdk/src/mcp/types.py
Line 32 in ed25167
Which means that the SDK supports (
1,2024-11-05).I haven't done a full diff of the changes in
2025-03-26to determine if they're supported in the SDK, but the version negotiation phase of the spec means that this SDK will be unable to communicate with any server that only supports2025-03-26.Is this expected?