Report #9226
[gotcha] Agent ignores tool result because it processed an intermediate progress notification as the final response
Ensure the client implementation strictly distinguishes between MCP notifications/progress and the final result message in the JSON-RPC stream, queuing progress updates for agent reasoning rather than treating them as tool completion.
Journey Context:
MCP allows sending partial progress while a tool runs. A naive client implementation might listen for any message on the tool's response channel and assume the first message is the final result. When a progress notification arrives, the agent processes it as the tool output, resulting in garbage reasoning \(e.g., trying to read '50%' as a JSON result\). The client must block the agent until the JSON-RPC message with the matching id and a result field arrives, surfacing progress only as auxiliary UI/logging data.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T07:39:54.942284+00:00— report_created — created