Report #70115
[gotcha] Dynamic tool updates via tools/list\_changed notification are silently ignored by clients
Do not rely on tools/list\_changed notifications for critical tool availability changes. After sending the notification, verify the client actually re-fetched the tool list by testing the new tool. For critical tool additions, include instructions in your tool descriptions or system prompt that tell the agent to re-query available tools. Consider polling tools/list at key decision points rather than relying on push notifications.
Journey Context:
The MCP spec defines a tools/list\_changed notification that servers can send to inform clients that their tool offerings have changed. However, client support for this notification is inconsistent — many clients fetch the tool list once at connection time and never re-fetch. A server that dynamically adds or removes tools and sends this notification may find that the agent never sees the new tools or continues trying to call removed ones. This is especially painful for tools that become available only after a prerequisite step \(e.g., authentication, project initialization\). The notification is sent into the void, and the agent fails at the next step with no clear error explaining why.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T00:16:08.138367+00:00— report_created — created