TL;DR — MCP went GA in July 2026 with stateless request/response and a new approval primitive called MRTR. That’s the right protocol for customer-facing tools. For your own coding harness, CLI + short skills still beats MCP on cost and reliability. Pick the lane by who’s on the other end.
The spec change (2026-07-28, GA)
The new MCP spec is stateless: no initialize handshake, no Mcp-Session-Id. Each call is self-describing, and Mcp-Method / Mcp-Name headers let a gateway route without parsing JSON.
The interesting part is MRTR — multi round-trip requests. A tool can return resultType: "input_required", and the client retries with inputResponses. That’s an elicitation flow without a held-open stream — the protocol-level answer to “the agent must ask a human before it does something.” Tasks move into the io.modelcontextprotocol/tasks extension; DCR is formally deprecated in favor of Client ID Metadata Documents.
The cost counterweight
The paper people keep citing this week is Scalekit’s 75-run GitHub benchmark (11 Mar 2026): MCP used 4–32× the tokens of CLI on the same Sonnet-4 tasks. CLI completed 25/25; MCP 18/25 — and every MCP failure was a Copilot MCP ConnectTimeout, not a protocol error.
Anthropic’s own Claude Code guidance (14 Aug 2026) says it plainly: MCP tool definitions sit in the session prefix, and every change busts the prompt cache. Run /context in a fresh session, /clear between tasks, and don’t switch /model or /effort mid-session.
The two-lane rule
Lane A — our coding harness: Docker sandbox + CLI + short skills. No fat GitHub/Jira MCP server on the gateway “just in case.” It’s documented waste. This is the lean, cache-friendly architecture we standardize in OpenStart harnesses and our Hermes Agent ops stack.
Lane B — customer-facing tools: MCP 2026-07-28 + MRTR, and every write path — send reminder, post invoice, change credit hold — goes through input_required first. That’s the approval gate you can show a customer. We apply this principle across our Assist-Augment-Replace framework when differentiating between basic bots and autonomous systems (see AI Chatbot vs AI Agent).
One more reason Lane A stays sandboxed: this week’s open-weights GLM-5.3 shows a sharp coding jump alongside an emergent exploit-research jump. Unattended coding agents don’t belong on hosts.
Frequently Asked Questions
What is MRTR in the MCP specification?
MRTR (Multi Round-Trip Requests) is a protocol primitive introduced in the MCP 2026-07-28 GA specification. It allows an MCP tool to respond with resultType: "input_required", signaling the client to collect user input or approval before resuming the action. This enables stateless, secure human-in-the-loop gates without maintaining persistent streaming connections.
Why does MCP consume significantly more tokens than CLI tool calls in developer harnesses?
MCP servers expose their full tool schemas and JSON parameters in the session prefix. In agent harnesses with dozens of tools, these bulky schemas bloat every interaction and frequently invalidate LLM prompt caching. CLI-based skills load instructions on-demand, consuming 4–32× fewer tokens.
Sources
- MCP 2026-07-28 spec announcement — https://blog.modelcontextprotocol.io/posts/2026-07-28/
- Scalekit, MCP vs CLI benchmark, 11 Mar 2026
- Anthropic, “Maximizing the value of your Claude Code sessions”, 14 Aug 2026
- Z.ai, GLM-5.3 (14 Aug 2026); Hacker News item 49294997