MCP governance is the set of controls that determine which Model Context Protocol servers an AI agent is allowed to reach, what those servers are allowed to do on the agent's behalf, and what gets recorded when they do it. It is not the protocol itself — MCP defines how an agent and a tool server talk to each other. Governance is the layer that decides whether that conversation should be happening at all, and under what conditions.
That distinction has become urgent for a specific reason: MCP just left its single-vendor phase and entered its infrastructure phase, and the ecosystem it's governing has grown faster than most organizations' ability to track what's connected to what.
The problem MCP governance solves
MCP servers extend an AI agent's reach into calendars, databases, ticketing systems, source control, and internal APIs. Every one of those servers is a new place an agent can read data from or take action against, and most organizations now have more of them than anyone has inventoried. A developer adds a personal MCP server to their coding assistant to save time. A team stands up an internal MCP server for a workflow and forgets to document it. An agent gets pointed at a third-party MCP server whose tool descriptions can change overnight, silently altering what the agent believes it's allowed to do — the failure mode known as an MCP rug pull.
None of that is hypothetical. It's the same pattern that made shadow IT a decade-long headache for security teams, except now it's shadow MCP, and the entities using unauthorized tools are autonomous agents that don't ask for permission before they act. Without governance, an organization typically can't answer three basic questions: which MCP servers exist across the company, which agents are connected to which servers, and what those connections are actually being used to do. MCP governance is the layer built to answer all three.
The analogy: governance is to MCP what identity and access management is to a network
The clearest comparison is enterprise identity and access management. A corporate network doesn't work by trusting every device that connects to it — it authenticates who's connecting, authorizes what they're allowed to touch based on role, and logs what they did for later review. MCP governance applies the same three-part model to agent-to-tool connections specifically: authenticate which agent or user is making a call, authorize which tools and data that identity can reach, and log every call for audit.
The reason this analogy holds better than "MCP governance is just observability" is that IAM isn't optional or after-the-fact — a network without access control isn't a network with weaker security, it's not really controlled at all. The same is true of MCP: a fleet of agents connected directly to MCP servers with no intermediating policy isn't a governed fleet with gaps, it's an ungoverned fleet that happens to work most of the time.
How this applies to AI agents specifically
Agents introduce two problems that traditional IAM was never built to handle. First, an agent's set of available tools can change without a human approving the change — a tool description gets edited on the server side, and the agent picks up new capabilities on its next call. Second, one agent's MCP connections are frequently invisible to the team managing a different agent, even inside the same company, because there's no shared catalog of what's connected to what.
Governing MCP for agents specifically means covering:
- Server catalog and discovery — a live inventory of every MCP server in use, sanctioned or not, so "shadow MCP" servers can be found rather than discovered after an incident.
- Identity-based access control — every tool call attributable to a specific agent, user, and session, not a shared credential that makes attribution impossible.
- Tool fingerprinting and drift detection — a recorded baseline for what each tool is supposed to do, so a silent change to a tool's description or behavior gets flagged instead of trusted by default.
- Prompt injection scanning at the tool boundary — inspection of tool descriptions and results themselves, since injected instructions can arrive through a tool's output, not just a user's prompt.
- Human-in-the-loop holds for destructive actions — an approval step for tool calls that write, delete, or send, rather than letting every call execute unattended.
- Durable audit logging — a record of every call, allowed or denied, that survives the agent's own memory and holds up for a compliance review.
- Standards-compliant authentication — remote MCP servers authenticated the way the specification actually requires, not a bespoke workaround per server.
That last point has a concrete, dated answer as of the current MCP specification (2025-11-25): authorization itself is technically optional at the protocol level, but once an HTTP-based server supports it, the spec's requirements stop being optional. Authorization servers must implement OAuth 2.1, MCP clients must implement PKCE with the S256 challenge method, all authorization-server endpoints must run over HTTPS, and servers must implement OAuth 2.0 Protected Resource Metadata (RFC 9728) for discovery while validating token audience per RFC 8707. Dynamic client registration (RFC 7591) still exists but has been downgraded to a backwards-compatibility fallback — the spec's preferred path for clients and servers with no prior relationship is now OAuth Client ID Metadata Documents. In practice, "optional" is theoretical for any remote server handling sensitive tools or data; it's what "governed" now means at the protocol level for anything that isn't purely local and single-user.
The Linux Foundation shift, and why it matters for governance
In December 2025, Anthropic donated the Model Context Protocol to a newly formed Agentic AI Foundation (AAIF) under the Linux Foundation, alongside Block's goose and OpenAI's AGENTS.md as founding contributions. The protocol's legal home is now "Model Context Protocol, a Series of LF Projects, LLC," with contributions licensed under Apache 2.0 and strategic direction set by an AAIF governing board.
Two things changed and one didn't. What changed: MCP is no longer governed by a single vendor's roadmap, which removes the single-vendor risk that made some enterprise architects cautious about standardizing on it — the same path Kubernetes and PyTorch took before wide enterprise adoption. What also changed: the protocol's own internal governance has a documented structure — Maintainers, Core Maintainers, and Lead Maintainers who together form the MCP Steering Group, with decisions and discussion made transparently. What didn't change is the day-to-day decision-making model itself; the foundation move formalized who's accountable, it didn't hand control to a new single party.
For anyone building MCP governance tooling or policy, this matters because it means the specification itself is now on a more predictable release and stewardship cadence — the published 2026 roadmap names transport evolution, agent communication lifecycles, governance maturation, and enterprise readiness as its four priority areas, organized by working group rather than by fixed dates. Organizational governance of MCP as a project and technical governance of MCP as a deployed protocol in your own environment are two different things, but the first now gives the second a more stable foundation to build on.
How Waxell handles this
Waxell's MCP Gateway is built around exactly the shift described above: a single governed surface in front of every MCP tool call an agent or assistant makes, rather than each agent connecting to upstream servers directly. One URL per tenant replaces every upstream MCP configuration the organization would otherwise have to track server by server.
Tool fingerprinting runs across five trust states — Pending review, Drift detected, Trusted, Blocked, and Removed — so a tool description that changes after it was first approved gets flagged as drift rather than silently trusted, which is the direct answer to the rug-pull problem described above. A prompt injection scanner runs against tool descriptions at fingerprint time, before any agent calls them, and human-in-the-loop approval holds keep destructive actions — writes, deletes, external sends — parked for a person rather than executing unattended.
Identity resolution supports three authentication modes — on-behalf-of OAuth, shared service account, and bring-your-own-token — with offboarding handled as a single transaction that revokes all upstream OAuth grants at once. Policy changes propagate in 30 seconds, and the audit log is durable, exportable to CSV, and stores no payloads — a record built to survive well past the retention window most teams actually need for a compliance review. All of it sits behind 160+ upstream connectors, so the gateway is a practical drop-in rather than a rebuild.
Waxell Observe complements the Gateway from the code side: two lines of instrumentation auto-cover 200+ frameworks, LLMs, and vector databases, then enforce against 50+ policy categories mapped to frameworks including OWASP LLM Top 10, NIST AI RMF, ISO 42001, the EU AI Act, and GDPR/HIPAA — so governance applies whether the agent's exposure is coming through an MCP tool call or a direct model call.
FAQ
Is MCP governance the same as an MCP gateway?
Not exactly. A gateway is one common architectural pattern for implementing MCP governance — a single point every tool call routes through, where policy gets enforced. Governance is the broader goal (control, visibility, audit); a gateway is one of the more effective ways to achieve it, because it puts enforcement in the traffic path rather than relying on every individual agent to self-police.
Does the Linux Foundation now control what MCP servers I can build or use?
No. The Linux Foundation and the AAIF govern the specification and the open-source project — how the standard evolves, who has commit access, how disputes get resolved. It has no say over what MCP servers any individual company builds, connects, or governs internally. That remains entirely up to each organization.
Do I need OAuth 2.1 for internal, single-user MCP servers?
The specification itself treats authorization as optional, and servers using local STDIO transport are explicitly told to pull credentials from the environment instead of implementing this flow. The OAuth 2.1-plus-PKCE requirement kicks in once an HTTP-based server chooses to support authorization at all — which is effectively every remote server with more than one user. Purely local, single-user servers have more latitude today, but "internal today" often becomes "exposed to more people tomorrow" faster than access controls get revisited, so treating standardized auth as the default even there is the safer bet.
What's the actual risk of not governing MCP connections?
The most cited pattern is the MCP rug pull: a tool's description or behavior changes after an agent has already been granted access to it, and the agent — with no mechanism to detect the change — continues trusting a tool that no longer does what it was approved to do. The second most common pattern is simple sprawl: nobody can produce a current list of which MCP servers are connected to which agents, which makes incident response and audit both effectively impossible.
How is this different from just reviewing MCP server code before approving it?
Code review catches what a server does at approval time. It doesn't catch what a server does after approval, once its description or behavior changes, or catch a server nobody knew was connected in the first place. Governance has to be continuous and runtime-enforced, not a one-time gate.
Does MCP governance slow down agent development?
Not if it's implemented as infrastructure rather than as a manual approval queue. A gateway-based approach lets developers connect to sanctioned servers instantly while unusual or high-risk calls — new servers, destructive actions — are the only ones that pause for review. The goal is to make the safe path the fast path.
Sources and verification notes
- Model Context Protocol — Governance and Stewardship
- Model Context Protocol Blog — Building to Last: A New Governance Model for MCP
- Model Context Protocol Blog — MCP joins the Agentic AI Foundation
- Linux Foundation — Announcing the Agentic AI Foundation (AAIF)
- Anthropic — Donating the Model Context Protocol and establishing the Agentic AI Foundation
- Model Context Protocol Blog — The 2026 MCP Roadmap
- Model Context Protocol — Authorization specification (2025-11-25)
- TrueFoundry — Enterprise MCP Governance
- Speakeasy — MCP gateway: architecture and governance
- Maxim AI — Why MCP Needs a Governance Layer
Top comments (0)