Report #17171
[tooling] MCP server requires restart to register new tools
Implement tools/listChanged capability to push updates when available tools change dynamically
Journey Context:
By default, clients fetch the tool list once at connection start. If your server loads plugins or generates tools dynamically \(e.g., from a database or user scripts\), clients won't see new tools until reconnection. The tools/listChanged capability \(declared in server capabilities\) allows the server to send a notification to the client when the tool list changes. The client then re-fetches tools/list. This avoids the need for clients to poll or restart connections. Many implementations miss this capability and instead implement hacky workarounds like forcing reconnection or creating 'refresh' tools.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T04:43:39.780475+00:00— report_created — created