Why MCP Is Dangerous
The Model Context Protocol connects AI agents to external tools. Without governance, it's an open door to credential exposure, supply chain attacks, and data exfiltration.
What MCP Is
MCP (Model Context Protocol) is a standard that connects AI coding agents to external tools and data sources — databases, file systems, APIs, search engines, and more. It's powerful. It's also ungoverned by default.
When you connect a Claude Code session to an MCP server, you're granting that server access to your agent's execution context. Without capability manifests, context isolation, or supply chain verification, any MCP server can access anything the agent can access.
Credential Exposure
CRITICALMCP servers can request file system access and read .env files containing API keys, database credentials, and authentication tokens. No default isolation exists.
Documented: AWS access keys, Stripe API keys, and database credentials exposed to an unverified third-party MCP server in under 60 seconds.
Supply Chain Attacks
CRITICALMCP servers are installed from npm or GitHub with no capability manifest validation. A malicious server package can silently exfiltrate data or inject code.
Any npm package with an MCP interface can request arbitrary tool access. No registry of verified MCP servers exists.
Context Injection & Tool Poisoning
HIGHMCP tools can inject content into the agent's context window through tool poisoning — hiding malicious instructions in tool descriptions or return values. This can override system prompts and bias model behavior.
A tool server returning carefully crafted content can influence the agent's subsequent reasoning and code generation. This is the MCP equivalent of prompt injection.
Confused Deputy & Over-Permissioning
HIGHThe confused deputy problem: MCP servers perform actions with their own (often elevated) privileges rather than the user's. Combined with default over-permissioning, agents get far more access than any task requires.
An MCP server with database access can execute arbitrary queries using its own credentials, bypassing the user's permission scope entirely.
Unrestricted File Access
HIGHMCP tools that request filesystem access receive broad permissions. No default file-guard restricts which directories or files can be read or written.
An MCP server with filesystem access can read source code, configuration files, deployment scripts, and CI/CD secrets.
No Audit Trail
MEDIUMMCP tool invocations are not comprehensively logged by default. Organizations cannot track what data was accessed, when, or by which server.
After a credential leak, there may be no audit trail to determine which MCP server accessed which files.
MCP Governance Containment
- Capability Manifests — every MCP server must declare what it needs access to before connection
- File Guards — block access to .env, credentials, and sensitive configuration paths
- Context Isolation — MCP tool outputs are sandboxed, preventing context injection
- Supply Chain Verification — verify server packages against a trusted registry before installation
- Audit Trail — log every MCP tool invocation with timestamp, server ID, and data accessed
- Scope Restriction — limit MCP access to project-specific directories only