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

Interaction & Data Flow

Data exfiltration via legitimate tools

HIGHAIVSS 8.4CWE: CWE-200OWASP: LLM02Agentic: T02Rule: MCP-005

The model, manipulated by prompt injection or a poisoned tool, uses a legitimate tool (send-email, create-issue, upload-file) to leak private context to an attacker. Concrete output-channel carriers are tracked separately: MCP-220 (Markdown image) and MCP-221 (Markdown hyperlink).

What it is

The tools are not the problem; the composition is. A model with both a "read private docs" tool and a "send email" tool can be persuaded to send the private docs to an attacker. There is no single handler to fix — each tool is behaving as designed.

Why it matters for MCP

MCP specifically encourages this topology: install many small tools, let the model compose them. The more tools you attach, the more outbound channels exist, and the harder it becomes to reason about which combinations are dangerous.

Vulnerable example

example.py
1
# Both tools are "safe" in isolation; together they exfiltrate.
2
@server.tool()
3
def read_secret_doc(doc_id: str) -> str: ...
4
5
@server.tool()
6
def send_email(to: str, body: str) -> None: ...

Secure example

example.py
1
# Enforce outbound egress policy at the client layer.
2
# E.g., require user confirmation for any tool that sends data
3
# to a recipient not already in the conversation's trust scope.
4
@server.tool(requires_confirmation=True, egress=True)
5
def send_email(to: str, body: str) -> None: ...

How MCPSafe detects this

We classify each tool as source (reads private state), sink (emits data externally), or transform. Packages that expose both high-sensitivity sources and low-friction sinks are flagged with a composition warning.

See the full threat catalog for every documented detection.

Framework alignment

OWASP LLM Top-10 (2025)
LLM02 — Sensitive Information Disclosure
OWASP Agentic AI Top-10
T02 — Tool Misuse
AIVSS v0.5
8.4 (HIGH)AIVSS:1.0/S:HIGH/AV:N/AU:H/BR:H/CD:I

Further reading

  • CWE-200: Exposure of Sensitive Information
  • MITRE ATLAS: Exfiltration

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