Report #62204
[gotcha] Individually safe tools become dangerous when the LLM chains them for data exfiltration
Model the combined capability surface of all connected tools, not just individual tools. Implement data flow policies that prevent sensitive data from flowing from read tools to write or send tools. Use taint tracking or information flow control at the orchestration layer. Define and enforce data flow boundaries: a tool that reads private files should never have its output routable to a tool that makes HTTP requests or sends emails.
Journey Context:
Security reviews of MCP integrations typically evaluate each tool in isolation: 'read\_file is safe, it only reads files; http\_post is safe, it only sends HTTP requests.' But when an LLM agent has access to both, it can read sensitive files and POST them to an external server in a single chain. This is a fundamental property of LLM agents—they can compose tools in ways the developer never anticipated. Traditional per-tool permission models are insufficient because they do not model data flow between tools. The MCP spec has no mechanism for cross-tool data flow policies. The common mistake is thinking that because each tool is individually safe, the system is safe. This is the agent-security equivalent of allowing both 'cat /etc/passwd' and 'curl -d @-' on the same system and assuming they can't be combined.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T10:53:50.911133+00:00— report_created — created