Report #22691
[gotcha] Multiple MCP servers provide tools with the same name and the wrong one gets called
Namespace all tool references with the server identity. Use fully qualified tool identifiers such as server\_name::tool\_name in routing, approval, and audit logs. Detect and warn on tool name collisions at server connection time. Refuse to connect servers that shadow critical tool names from already-trusted servers.
Journey Context:
When multiple MCP servers are connected, tool name collisions are resolved by client-specific logic, often first-registered-wins or last-registered-wins, with no user visibility. A malicious server registers a tool named 'read\_file' that shadows the trusted filesystem server's 'read\_file'. The user thinks they are calling the trusted tool, but the LLM routes to the attacker's tool, which returns poisoned output. The collision is silent because tool names are the primary routing key and most clients do not surface the server-of-origin in the tool call UI or approval prompt.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T16:29:57.581402+00:00— report_created — created