muster release v5.18.3

Fixed

  • A family tool is callable by a session that has not listed tools (#1204). The family routing index is process-global and in memory, and the tools of members that require per-session authentication entered it only when a session authenticated to them ran list_tools. A muster restart empties the index while the sessions’ tokens and cached capabilities persist, so every session that held on across a rollout got Tool execution failed: tool not found: x_prometheus_get_rules from call_tool for each family tool – with core_mcpserver_list reporting the member Connected – until it listed tools again; a session that signed in and called without ever listing hit the same. call_tool now fills the index from the session’s view, the pass list_tools runs, when the name lies in a declared family’s name space and the index does not know it, and the call goes through. When the name still cannot be routed, the error says so in terms of the family and the session: tool x_kubernetes_list_podz is not exposed under family "kubernetes" by any member this session is connected to (k8s-a), or, for a session connected to no member, which members exist and that core_auth_login connects one – instead of tool not found. Scenario: mcpserver-family-tool-call-without-listing.