What is Excessive Agency?

2 min read Updated

Excessive agency is when an AI agent has more tool access, permissions, or autonomy than required for its task. It is a core vulnerability that amplifies the impact of any other exploit.

WHY IT MATTERS

Excessive agency is not an attack — it's the vulnerability that makes attacks devastating. An agent that only has read access to a single database table has a limited blast radius even if fully compromised. An agent with read-write access to every database, file system, API, and communication tool is a catastrophe waiting for a trigger.

The problem is systemic. MCP servers expose all their tools to connected clients by default. Developers add servers for convenience without scoping permissions. Agent configurations accumulate tools over time as new servers are connected but old ones are never removed. The result is agents with far more capability than any single task requires.

Excessive agency violates the principle of least privilege, which security engineering has recognised as fundamental for decades. But applying least privilege to AI agents is harder than applying it to traditional software. Agents are designed to be general-purpose — their value comes from flexibility. Restricting them feels like reducing their usefulness.

This tension — flexibility vs safety — is the core design challenge. The solution isn't to make agents less capable but to enforce boundaries that constrain how those capabilities are used. An agent can have access to 50 tools but be restricted to using 5 for a given task, with argument constraints on each.

HOW POLICYLAYER USES THIS

Intercept is purpose-built to address excessive agency. YAML policies define exactly which tools an agent can use, with what arguments, at what rate, and for what purposes. Tool allowlists restrict access to only the tools required for the current task. Argument validation constrains parameters to safe ranges. Rate limiting prevents bulk operations. This is least privilege enforcement at the tool call layer — the agent retains its full capability set, but Intercept ensures only the authorised subset is available for any given context.

FREQUENTLY ASKED QUESTIONS

Is excessive agency listed in OWASP's LLM Top 10?
Yes. Excessive Agency is explicitly listed as a top risk in the OWASP Top 10 for LLM Applications, recognising it as a fundamental vulnerability in AI agent deployments.
How do I determine the minimum permissions an agent needs?
Audit the agent's actual tool usage over time, identify the tools and argument patterns used for legitimate tasks, and build an allowlist from observed behaviour. Intercept's audit trail provides the data needed for this analysis.
Can I scope permissions per task rather than per agent?
Yes. Intercept supports context-aware policies, allowing different tool allowlists for different tasks or sessions while using the same underlying agent configuration.

FURTHER READING

Enforce policies on every tool call

Intercept is the open-source MCP proxy that enforces YAML policies on AI agent tool calls. No code changes needed.

npx -y @policylayer/intercept
github.com/policylayer/intercept →
// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.