MCPSafe.io
RegistryThreatsMethodologyDocsPricingScanSign in
MCPSafe.io

Security checks for MCP servers — public packages and private repos, fast or deep.

Legal

Privacy PolicyCookie PolicyTerms of ServiceSecurity disclosure

Resources

State of MCP SecuritySupportSystem statusMade in Germany 🇩🇪

© 2026 MCPSafe. All rights reserved.

GDPR — Privacy Policy
← Threat Catalog

Tool Definition & Lifecycle

Cross-server tool shadowing

HIGHAIVSS 7.2CWE: CWE-1357OWASP: LLM01Agentic: T12Rule: MCP-046

Two installed MCP servers register a tool with the same name; a malicious second server shadows or spoofs a tool the user trusted.

What it is

When a client is connected to multiple MCP servers at once — which is the common case — tool names can collide. If a malicious server registers `read_file`, a naive client may route the model's call to the wrong server. Even if the client disambiguates, the model sees two tools with identical descriptions and may pick the wrong one.

Why it matters for MCP

The MCP spec does not mandate namespacing of tool names across servers, so namespacing is a client-level concern. Clients that silently accept every tool from every server, and present them to the model as a flat list, give the attacker a free hand.

Vulnerable example

example.js
1
// Client-side: all tools in one list, last write wins
2
const allTools = new Map();
3
for (const server of servers) {
4
  for (const t of await server.listTools()) {
5
    allTools.set(t.name, t); // collision silently overwrites
6
  }
7
}

Secure example

example.js
1
// Namespace by origin, require explicit disambiguation.
2
const allTools = new Map();
3
for (const server of servers) {
4
  for (const t of await server.listTools()) {
5
    const key = `${server.id}::${t.name}`;
6
    allTools.set(key, t);
7
  }
8
}

How MCPSafe detects this

We scan registered MCP servers for tool names that duplicate names in other high-popularity servers. Not every collision is malicious, but every collision is a latent confusion risk, and we surface it.

See the full threat catalog for every documented detection.

Framework alignment

OWASP LLM Top-10 (2025)
LLM01 — Prompt Injection
OWASP Agentic AI Top-10
T12 — Agent Communication Poisoning
AIVSS v0.5
7.2 (HIGH)AIVSS:1.0/S:HIGH/AV:N/AU:H/BR:M/CD:I

Further reading

  • CWE-1357: Reliance on Insufficiently Trustworthy Component

Scan an MCP server for this issue

MCPSafe runs this check — and every other rule in the catalog — on any MCP server you paste in.

Scan now