A Multi Round-Trip Request (MRTR) is the Model Context Protocol (MCP) pattern for obtaining additional input during a client-initiated operation without keeping a bidirectional protocol session open. It was introduced with the 2026-07-28 MCP Stateless Protocol revision.
For example, a tool asked to change a record may discover that a required field is missing. Instead of completing the change or failing immediately, the server returns resultType: "input_required" with keyed inputRequests. The client obtains the requested answer, then retries the original operation with inputResponses. If the server needs to carry information between rounds, it includes an opaque requestState that the client echoes on the retry. More than one round can occur before the server returns resultType: "complete".
The embedded request may represent MCP Elicitation of a user, model sampling, or another supported input type. The client remains responsible for presenting a user request honestly and respecting a decline or cancellation. The server must treat returned answers and echoed requestState as untrusted input. State carried through the client should be integrity-protected, bound to the original operation and caller, and given an expiry so it cannot be altered or replayed for a different action.
MRTR is an interaction pattern, not a background job. An MCP task represents asynchronous server-side work that a client can poll later. An MRTR instead pauses one logical request until a missing input is supplied; a task may itself require input, but the two mechanisms solve different lifecycle problems.
The protocol's SEP-2322 specifies the request and retry flow, including inputRequests, inputResponses, and requestState.
The LLM Knowledge Base is a collection of bite-sized explanations for commonly used terms and abbreviations related to Large Language Models and Generative AI.
It's an educational resource that helps you stay up-to-date with the latest developments in AI research and its applications.
Previous