AI security
MCP security: the main risks and what the MCP project advises
A plain guide for IT, security and engineering leads. Every fact on MCP security is taken from the MCP project's own security best practices page and from Anthropic's Claude Code documentation, as read on 10 November 2026.
MCP security is the work of protecting the servers, clients, tokens and data involved when an AI application uses the Model Context Protocol (MCP) to reach outside systems. The MCP project publishes a security best practices page that names specific risks. They include confused deputy attacks on proxy servers, passing client tokens through to other services, requests sent to unintended addresses, malicious local servers, and access tokens with too many permissions. Its advice is practical: accept only tokens issued for your server, ask users for explicit approval before running a local server, run local servers in a sandbox, and request the narrowest permissions first. Sources read on 10 November 2026.
definition
What is MCP security?
MCP security is the set of controls around the Model Context Protocol, an open-source standard for connecting AI applications to external systems (MCP project, What is the Model Context Protocol, read 10 November 2026). Because an MCP connection lets an AI application reach real systems, its security comes down to who can connect, with what credentials, and what the connection is allowed to do.
The MCP project's security best practices page says it identifies security risks, attack vectors and best practices specific to MCP implementations. Its stated audience is developers implementing MCP authorization flows, MCP server operators, and security professionals evaluating MCP-based systems (read 10 November 2026).
risks
What are the main MCP security risks?
The page sets out these attacks, each with a description and mitigations. The wording below is ours, and the names are the page's:
- Confused deputy problem: attackers exploit MCP proxy servers that connect to third-party APIs to obtain authorization codes without proper user consent.
- Token passthrough: an MCP server accepts tokens from a client without checking they were issued to that server, and passes them on to another service.
- Server-side request forgery (SSRF): an attacker gets an MCP client to make web requests to unintended destinations, such as internal network resources.
- Local MCP server compromise: a server that runs on a user's own machine is started by a malicious command or carries a malicious payload.
- OAuth authorization URL validation: a malicious server supplies a web address that a client mishandles.
- Scope minimization: a token carrying broad permissions turns a single leak into wide access.
The page covers further topics we leave out here because they apply to specific designs, among them state handle hijacking, mix-up attacks, localhost redirect URI impersonation and stdio transport security in proxy scenarios.
tokens
Why must an MCP server not pass tokens through?
The page calls token passthrough an anti-pattern and says it is explicitly forbidden in the MCP authorization specification. Its stated mitigation is direct: MCP servers must not accept any tokens that were not explicitly issued for the MCP server.
It gives reasons. Passing tokens through can let a client bypass controls such as rate limiting and request checks that depend on who a token was issued to. It can also hide who really made a request, because the downstream service's logs show a different identity from the server that forwarded the call. The page says both make incident investigation, controls and auditing more difficult.
local
How should local MCP servers be handled?
A local MCP server runs on a user's own machine and may have direct access to the user's system. The page says that without proper sandboxing and consent requirements, an attacker could put a malicious startup command in a client configuration or hide a malicious payload in the server itself.
For clients that offer one-click setup of a local server, the page says the client must show the exact command, without truncation, and require explicit user approval before running it. It adds that clients should run server commands in a sandboxed environment with minimal default privileges, and let users grant extra access only when needed.
scopes
How much access should an MCP connection get?
As little as the first task needs. The page warns that a token carrying broad scopes, such as full file or database access granted up front, means a stolen token enables lateral data access and is hard to revoke without asking the user to consent again.
Its mitigation is a progressive, least-privilege model: begin with a minimal set of low-risk discovery and read operations, ask for more only when a privileged action is first attempted, and log those elevation events. For one named client, Anthropic's Claude Code documentation tells users to verify they trust each MCP server before connecting it, and says servers that fetch external content can expose them to prompt injection risk (Anthropic, read 10 November 2026).
checklist
What should you ask before connecting an MCP server?
This is our own checklist, built from the sources above. It is not a standard and not a substitute for reading them. Before you connect an MCP server to an agent, settle these in writing:
- Who runs this server, and do we trust them? Is it local or remote?
- Which token does it use, and was that token issued for this server and no other?
- What is the narrowest access it needs for the first task, and who approves more?
- Does anyone see the exact command or configuration before a local server runs?
- Where are connections and elevations logged, and who reads the log?
- What outside content can it return, and what could that content tell the agent to do?
The last question connects MCP to prompt injection, which our guide to prompt injection covers.
kriv role
How does Kriv AI help?
Kriv AI designs and builds governed AI agents connected to a client's own systems, and trains the people who work alongside them. For MCP, our work is informed by the MCP project's security guidance and Anthropic's documentation: listing which servers an agent may use, keeping approvals with named people, and logging what each connection does. This page is general information, not a security assessment, and it does not promise that any setup is protected from attack.
limits
What this page could not confirm
This page rests on the sources listed below, as read on 10 November 2026. We read version 2026-07-28 of the MCP security page, which the MCP site shows by default, and also version 2025-11-25. The risks named here appear in the 2026-07-28 and 2025-11-25 versions, and the guidance can change. We did not test an MCP server, review any vendor's connector, or read the MCP authorization specification itself. Where the page uses words such as must and should, we kept them. Check the current pages before you plan.
Sources
Cited sources
- Model Context Protocol: Security Best Practices, Version 2026-07-28 (the version the MCP site shows by default; page shows no publication date), read 10 November 2026
- Model Context Protocol: Security Best Practices, Version 2025-11-25 (page shows no publication date), read 10 November 2026
- Anthropic Claude Code Docs: Connect Claude Code to tools via MCP (page shows no date), read 10 November 2026
- Model Context Protocol: What is the Model Context Protocol (MCP)? (page shows no date), read 10 November 2026
Related resources
Continue exploring
Straight answers
Frequently asked questions about MCP security: the main risks and what the MCP project advises
What is MCP security?
It is how you protect the servers, clients, tokens and data involved when an AI application uses the Model Context Protocol. The MCP project publishes a security best practices page for implementers and security professionals (read 10 November 2026).
What is token passthrough in MCP?
It is when an MCP server accepts a client's token without checking it was issued to that server and forwards it to another service. The MCP page calls it an anti-pattern and says servers must not accept tokens not issued for them (read 10 November 2026).
Are local MCP servers risky?
They can be. The MCP page says a local server may have direct access to the user's system, and that clients must show the exact command and get explicit user approval before one-click setup runs it (read 10 November 2026).
Why does MCP scope matter?
A token with broad permissions turns one leak into wide access. The MCP page recommends starting with minimal read-level scope and requesting more only when a privileged action is first attempted (read 10 November 2026).
Does MCP remove the risk of prompt injection?
The sources we read do not say so. Anthropic's Claude Code documentation says servers that fetch external content can expose you to prompt injection risk, and tells users to verify they trust each server (read 10 November 2026).
Talk to the team that would do the work
Bring your requirements to a working session with the person who'll actually deliver.
Book a Discovery Call