This PR adds the protocol version `2026-07-28` to the list of supported protocol versions and fixes legacy tests hardcoding the legacy protocol version for those use cases.
85 lines
1.9 KiB
Text
85 lines
1.9 KiB
Text
Check the multi-round-trip request pattern under protocol version
|
|
2026-07-28. The server's tool handler returns an
|
|
InputRequiredResult on the first call, requesting elicitation input from the
|
|
client and providing an opaque RequestState token. The client fulfills the
|
|
input request and retries the tool call with the responses and the echoed
|
|
RequestState; the handler then returns the final result.
|
|
|
|
-- tools --
|
|
confirmThenGreet
|
|
-- client --
|
|
{
|
|
"jsonrpc": "2.0",
|
|
"id": 1,
|
|
"method": "tools/call",
|
|
"params": {
|
|
"_meta": {
|
|
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
|
|
"io.modelcontextprotocol/clientInfo": { "name": "ExampleClient", "version": "1.0.0" },
|
|
"io.modelcontextprotocol/clientCapabilities": { "elicitation": {} }
|
|
},
|
|
"name": "confirmThenGreet",
|
|
"arguments": {}
|
|
}
|
|
}
|
|
{
|
|
"jsonrpc": "2.0",
|
|
"id": 2,
|
|
"method": "tools/call",
|
|
"params": {
|
|
"_meta": {
|
|
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
|
|
"io.modelcontextprotocol/clientInfo": { "name": "ExampleClient", "version": "1.0.0" },
|
|
"io.modelcontextprotocol/clientCapabilities": { "elicitation": {} }
|
|
},
|
|
"name": "confirmThenGreet",
|
|
"arguments": {},
|
|
"requestState": "step=1",
|
|
"inputResponses": {
|
|
"who": {
|
|
"method": "elicitation/create",
|
|
"result": { "action": "accept", "content": { "name": "MCP Go" } }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-- server --
|
|
{
|
|
"jsonrpc": "2.0",
|
|
"id": 1,
|
|
"result": {
|
|
"content": null,
|
|
"requestState": "step=1",
|
|
"resultType": "input_required",
|
|
"inputRequests": {
|
|
"who": {
|
|
"method": "elicitation/create",
|
|
"params": {
|
|
"mode": "",
|
|
"message": "What is your name?",
|
|
"requestedSchema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
{
|
|
"jsonrpc": "2.0",
|
|
"id": 2,
|
|
"result": {
|
|
"content": [
|
|
{
|
|
"type": "text",
|
|
"text": "hello MCP Go"
|
|
}
|
|
],
|
|
"resultType": "complete"
|
|
}
|
|
}
|