Report #60940
[gotcha] Two MCP servers expose tools with the same name and the wrong one gets called
Namespace tool names with the server identity at registration time. When registering tools from multiple MCP servers, prefix tool names with a server identifier \(e.g., \`github\_\_search\_repos\` vs \`gitlab\_\_search\_repos\`\). On the dispatch side, resolve namespaced names to the correct server connection.
Journey Context:
The MCP protocol does not enforce unique tool names across servers. If you connect both a GitHub MCP server and a GitLab MCP server, both might expose a \`search\_repos\` tool. The host application must decide which to call, and if it picks the first match, you get silent wrong-server calls. The model has no way to disambiguate because it only sees the tool name and description. This is especially dangerous when servers have overlapping functionality—results look plausible but come from the wrong system.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T08:46:35.322779+00:00— report_created — created