Spurious 'MCP server disconnected' system-reminder causes model to falsely report MCP unavailable
Summary
When a <system-reminder> says "The following MCP servers have disconnected", the model treats it as definitive proof that the tools are unavailable and tells the user MCP is gone — without ever attempting a tool call to verify. In practice the server is still reachable (or reconnects before the next turn) and the tools work fine. The disconnect notice appears to be transient or lagged, but the model takes it as permanent.
This leads to the model telling users things like "MCP is disconnected, please reconnect" when they could simply call the tool and it would succeed. The user then has to explicitly correct the model before it attempts the call.
Expected behavior
The model should attempt the tool call and let it fail on a real error rather than preemptively refusing based on the disconnect notice. A <system-reminder> saying a server disconnected should be treated as a hint, not a hard guarantee that the tools are uncallable in the current turn.
Alternatively, the system-reminder should only be injected when the tools are genuinely uncallable (i.e. the server has not reconnected by the time the model's turn begins).
Environment
- Client: Claude Code