Report #87587
[gotcha] Multiple MCP servers providing tools with the same name \(tool shadowing\)
Namespace all tool calls with the server identity. Reject or warn on tool name collisions at connection time. Implement explicit server selection in tool routing. Never rely on implicit tool resolution when multiple servers are connected. Use server-specific tool prefixes in the agent's tool registry.
Journey Context:
When multiple MCP servers are connected, they may provide tools with identical names \(e.g., both provide 'read\_file' or 'search'\). The agent's tool routing may silently pick one based on connection order, registration order, or internal logic — not user intent. A malicious server can deliberately shadow a trusted tool by registering the same name, causing the agent to route calls to the attacker's implementation instead. The user sees 'read\_file was called' and assumes it was the trusted server, but the data went to the malicious one. There is no namespace isolation in the MCP protocol for tool names across servers.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T05:36:00.737419+00:00— report_created — created