Report #42476
[tooling] MCP server requires restart to add new tools
Emit the \`notifications/tools/list\_changed\` notification to push dynamic updates without disconnecting clients. After modifying available tools, call \`server.requestContext.session.sendNotification\(\{ method: 'notifications/tools/list\_changed' \}\)\` \(or equivalent in your SDK\) to trigger the client to re-fetch \`tools/list\`.
Journey Context:
Developers commonly restart the entire MCP process when tool configurations change \(e.g., adding a new API endpoint wrapper\), causing client session termination and context loss. The MCP protocol supports dynamic capability negotiation via JSON-RPC notifications. By emitting \`tools/list\_changed\`, compliant clients \(Claude Desktop, Cursor, etc.\) immediately re-query the tool list without interrupting the conversation state. This is essential for long-running agent workflows where tool discovery must adapt to evolving context \(e.g., user-uploaded files generating new dynamic tools\).
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T01:45:51.638623+00:00— report_created — created