Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · mcp

Multi Round-Trip Requests changedspecification/draft/basic/patterns/mrtr

Nearest release: v2.1.305, published under an hour before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Upstream edited this page at 20 Oct 2026 20:02 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 20 Oct 2026 20:07 UTC.

Upstream edited
Recorded here
Lines+23added
Lines−25removed
From line 1 where the diff opens
First seen 26 Aug 2026 this site's first read of the page
Recorded edits3to this page, all time

The whole hunk

from line 1, old and new numbered
/
lines
from line 1
11# Multi Round-Trip Requests
22 
3<div id="enable-section-numbers" />
3> [!NOTE]
4>
5> Multi Round-Trip Requests (MRTR) was introduced in this version of the MCP
6> specification. This replaces the previous approach of sending server-initiated
7> requests. Servers **MUST** send server-to-client requests (such as
8> `roots/list`, `sampling/createMessage`, or `elicitation/create`) using the
9> MRTR pattern. The previous pattern of server-initiated requests is no longer
10> supported. This is a breaking change.
411 
5<Note>
6 Multi Round-Trip Requests (MRTR) was introduced in this version of the MCP
7 specification. This replaces the previous approach of sending server-initiated
8 requests. Servers **MUST** send server-to-client requests (such as
9 `roots/list`, `sampling/createMessage`, or `elicitation/create`) using the
10 MRTR pattern. The previous pattern of server-initiated requests is no longer
11 supported. This is a breaking change.
12</Note>
12> [!NOTE]
13>
14> For brevity, the request examples on this page omit the `_meta` request
15> metadata (`io.modelcontextprotocol/protocolVersion`,
16> `io.modelcontextprotocol/clientInfo`, and
17> `io.modelcontextprotocol/clientCapabilities`). Every request **MUST** include
18> the required `_meta` fields; see
19> [`_meta`](/specification/draft/basic/index#meta).
1320 
14<Note>
15 For brevity, the request examples on this page omit the `_meta` request
16 metadata (`io.modelcontextprotocol/protocolVersion`,
17 `io.modelcontextprotocol/clientInfo`, and
18 `io.modelcontextprotocol/clientCapabilities`). Every request **MUST** include
19 the required `_meta` fields; see
20 [`_meta`](/specification/draft/basic/index#meta).
21</Note>
22 
2321## Multi Round-Trip Requests
2422 
2523The Model Context Protocol (MCP) defines several ways for servers to request additional information
from line 234
236234 * the authenticated principal, rejecting state presented by a different principal.
237235 * a short expiry (TTL), rejecting state presented after it lapses;
238236 * an identifier for the originating request, e.g. the method name and a digest of its salient parameters, rejecting state presented on a request that does not match.
239 <Warning>
240 Note that these measures bound the replay window and prevent cross-user
241 and cross-request reuse, but do not by themselves guarantee single-use.
242 Servers for which a given `requestState` must be consumed at most once
243 (e.g., one-time redemptions) **MUST** enforce that invariant server-side.
244 </Warning>
237 > [!WARNING]
238 >
239 > Note that these measures bound the replay window and prevent cross-user
240 > and cross-request reuse, but do not by themselves guarantee single-use.
241 > Servers for which a given `requestState` must be consumed at most once
242 > (e.g., one-time redemptions) **MUST** enforce that invariant server-side.
245243 
2462446. Servers **MUST** include at least one of `inputRequests` or `requestState` in every `InputRequiredResult` response.
247245 
Feedback