AI + MCP SECURITY

SECURITY

MCP Security and Governance: A Production Threat Model and Control Checklist

MANUAL REVIEW · AUG 9, 2026CONFIDENCE · HIGHPRIMARY SOURCESORIGINAL FRAMEWORKEDITORIAL METHOD →

A practical MCP security guide covering OAuth boundaries, token audience, tool privilege, prompt injection, third-party servers, auditability, approval gates, and incident response.

IN 45 SECONDS

MCP creates a clean integration standard, but security still depends on the systems around it. The central design principle is to separate identity, resource authorization, tool permission, model reasoning, and human approval instead of treating them as one trust decision.

Three decisions that matter

  • Never use model confidence as authorization.
  • Do not pass upstream credentials through the MCP client; keep resource-server boundaries explicit.
  • Treat every tool schema and third-party server as part of the production attack surface.

Draw the trust boundaries first

Before connecting an MCP server, draw the identities and tokens that cross the system. The user authenticates to the host. The host may create one or more MCP client relationships. A protected remote MCP server acts as a resource server and validates tokens intended for that server. If the MCP server itself calls an upstream service, that is another authorization relationship.

ORIGINAL XTIANZ FRAMEWORKMCP trust chain
01UserHuman identity
02HostSession + policy
03MCP clientProtocol actor
04MCP serverProtected resource
05Upstream APISeparate credential
XTIANZ original framework

The 2026-07-28 authorization specification is explicit that protected MCP servers need appropriate OAuth-based controls and resource metadata. Security considerations also require servers to reject tokens not intended for them. This prevents a common shortcut: accepting a token merely because it is valid somewhere.

The highest-value threats to test

ThreatFailure patternControl
Prompt injectionUntrusted content attempts to redirect agent behaviorSeparate data from policy; tool confirmation; content trust labels
Tool poisoningServer metadata or tool description influences unsafe useApprove servers; pin configuration; review tool schemas
Token passthroughCredential for one service is reused through another boundaryIndependent audience-bound tokens
Overprivileged serverOne server exposes broad read/write capabilitySplit servers; least privilege; read-only defaults
Argument injectionModel supplies dangerous path, query, or commandStrong schemas; allowlists; server-side validation
Confused deputyHost causes server to act with authority not intended by userBind identity, resource and action; explicit consent
Data exfiltrationTool or server sends sensitive data outwardEgress controls; classification; trusted destinations
Shadow serverUnapproved MCP endpoint enters developer workflowManaged configuration; inventory; network policy

Design approval around consequence

Not every tool call needs a human prompt. Excessive confirmation causes users to click through warnings. Classify actions by consequence instead: read-only low-sensitivity calls may run automatically; writes that are reversible can use bounded approval policies; privileged or irreversible actions should require explicit approval with enough context for the reviewer to make a real decision.

The approval screen should show what will change, which identity will perform the action, the target system, and the evidence used to choose the action. “Allow tool?” is not meaningful governance.

Log decisions, not just HTTP requests

Traditional API logs are insufficient for an agentic workflow. Capture the user intent, selected server/tool, validated arguments, policy decision, approval event, tool result, model interpretation, verification result, and final outcome. This creates the causal record needed for incident analysis.

Keep secrets and sensitive payloads out of logs where possible. Store identifiers, hashes, classifications, and redacted summaries when full payload retention is inappropriate.

Production readiness checklist

Server inventoryOwner, environment, purpose, trust level, data class.
Tool inventoryRead/write, reversibility, privilege, approval rule.
Token policyAudience validation, expiry, revocation, no passthrough.
Input policySchema validation, content trust, prompt-injection handling.
Change controlVersion servers, tools, prompts, policies and protocol.
Incident responseDisable server, revoke token, stop action, reconstruct run.

PRIMARY SOURCES

Sources used for this review

XTIANZ links to specifications, product documentation, filings, regulators, and government sources so readers can verify fast-changing claims directly.

CM

ABOUT THE AUTHOR

Chris M.

Enterprise technology and AI systems practitioner with more than two decades of experience across global operations, infrastructure, collaboration platforms, cloud services, reliability, and technical leadership.

Experience and review approach →

Review history

August 9, 2026 — Reworked as a flagship XTIANZ guide with current primary sources, original decision frameworks, and technical review.

Suggest a correction

Disclosure

AI tools may assist research organization, drafting, code, and quality checks. The final structure, claims, frameworks, and publication decision are manually reviewed. XTIANZ does not accept payment to change technical conclusions.