Key takeaways
- MCP standardizes connections; it does not make a connected server, tool, resource, or prompt trustworthy.
- Map data reads, side effects, credentials, approval points, and exfiltration paths before connecting production systems.
- Treat web pages, documents, tool descriptions, and retrieved records as untrusted data that may contain instructions.
- Enforce authorization, least privilege, output controls, logs, revocation, and bounded human approval outside the model.
01
The dangerous diagram has arrows but no boundaries
“The agent can read campaign data, check the CRM, research competitors, and update ads” sounds efficient because the sentence hides four trust zones. Each connector introduces credentials, data exposure, tool descriptions, returned content, and possible side effects. The protocol makes those interactions easier to describe; the host still has to decide what is allowed.
The MCP specification emphasizes user consent, data privacy, tool safety, and access control. Current security guidance from the NSA similarly warns that MCP adoption in sensitive workflows requires careful implementation. Start by assuming that any external content the agent reads can be adversarial and any write-capable tool can create a costly side effect.
02
Threat-model the workflow, not the chatbot screen
List every actor, credential, server, tool, resource, destination, and log. Mark where untrusted content enters and where data can leave. Then ask what happens if a retrieved page tells the model to ignore the user, if a tool description is changed, if a server is impersonated, or if two harmless permissions combine into a sensitive export.
Swipe to compare every column
| Surface | Failure to model | Boundary to enforce |
|---|---|---|
| Resources | A document contains indirect prompt injection | Label untrusted content and prevent it from authorizing actions |
| Tools | A broad write tool changes spend or publishes content | Narrow parameters, caps, previews, approvals, and rollback |
| Credentials | One token reaches every connected account | Per-service scopes, short lifetime, rotation, and revocation |
| Outputs | CRM data is copied to a public or third-party destination | Destination allowlists, field minimization, and egress checks |
03
Move the final control outside the prompt
A system instruction that says “never leak data” is useful behavior guidance, not an authorization boundary. Enforce permissions in the host and downstream APIs. Separate read tools from write tools. Require a structured proposal before a material action, validate the proposal against policy, and obtain approval that names the account, object, change, and expected consequence.
For repetitive low-risk actions, approval can be pre-authorized within explicit limits. The limit still belongs in code or policy: daily spend delta, allowed fields, approved destinations, maximum batch size, and a clear expiration.
04
Test the attack paths and the recovery path
Build evaluations containing malicious pages, poisoned tool metadata, oversized exports, lookalike destinations, stale credentials, replayed approvals, and partial failures. Confirm that logs identify the initiator, data accessed, proposed call, policy result, approval, response, and compensating action without storing sensitive prompt contents unnecessarily.
No control eliminates prompt injection completely. OpenAI describes it as an evolving security challenge and recommends layered defenses. The honest launch criterion is therefore not “the agent is safe.” It is that the useful workflow has a bounded blast radius, observable failures, and a practiced way to stop it.
Primary sources and further reading
Use the source material to validate details against your own context and current platform configuration.
- Model Context Protocol specification: Security and trust
- MCP authorization security considerations
- NSA: MCP security design considerations
- OpenAI: Understanding prompt injections
- Breaking the Protocol: MCP security analysis
This field note follows the XenGrowth editorial policy: primary sources where available, visible limitations, material review dates, and no invented first-hand experience.
Stay with the problem



