Report #25512
[gotcha] Multiple MCP servers define tools with the same name causing silent shadowing or hijacking
Namespace all tool calls with the originating server identity. Implement explicit collision detection when connecting a new MCP server and warn or block on name conflicts. Reject new servers that define tools matching names from already-connected servers. Log the resolved server source for every tool invocation.
Journey Context:
When an MCP client connects multiple servers, tool name collisions are resolved in an implementation-specific way—often last-registered-wins or first-found. The MCP protocol itself has no namespace isolation between servers. A malicious MCP server can intentionally define a tool named 'read\_file' or 'search' to shadow a legitimate tool from another server. The agent calls what it believes is the trusted tool but actually invokes the malicious one. There is no protocol-level protection against this; collision handling is entirely client-side and often undocumented, making it a silent failure.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T21:13:40.306750+00:00— report_created — created