Safeguard
AI Security•

What goes in an AI agent tool permission manifest?

A tool permission manifest is a short reviewed file listing what one AI agent may call and with which limits. Here are the fields and a sample layout.

Safeguard Security Team
3 min read

An agent tool permission manifest is a short, version controlled file that states exactly which tools one agent may call, with what scopes, limits and approval rules, and who owns it. It turns "what can this agent do?" into a diff you can review and an auditor can read.

Why a file and not a settings page

Settings pages change silently and keep no history. A file in a repository has an author, a reviewer and a timestamp on every change. That history is audit evidence you get for free. It also lets you compare the approved list with what the agent sees at runtime, which is how you spot drift.

Fields to include

FieldExample valueWhy it matters
Agent name and IDsupport-triage-agentTies the file to one identity
Owner and sponsornamed team and personSomeone answers for it
EnvironmentproductionPrevents a dev list leaking upward
Tool name and servertickets.search on helpdesk serverExact allow entry
ClassreadFrom your verb table
Scoperead tickets for one queueThe narrowest grant that works
Limits30 calls per taskContains loops
Approval rulenone, or named approver groupWho must say yes
Expiry or review datenext review quarter endStops stale grants
Reasonneeded to summarise open ticketsLets reviewers question it

Sample layout

Keep it plain. A YAML or JSON file works. The shape is a header with agent, owner and environment, followed by a list of tool entries with the columns above. Avoid free text where a value will do, so a script can read it.

How to roll it out

  1. Pick one agent already in production and write its manifest from what it actually calls, using a month of logs.
  2. Remove entries nobody can justify. Ask the owner for the reason field on each one.
  3. Require a pull request, with the agent's sponsor as reviewer, for any change.
  4. Add a check that compares the manifest with the live tool list and alerts on extra tools.
  5. Repeat for the next agent. Reuse the same field set so reviews stay quick.

What the manifest does not do

A file describes intent. Enforcement still has to happen where the tool call is made, such as the client, a proxy or the downstream service. OWASP calls this complete mediation: authorization should be enforced in downstream systems, not left to the model to decide. The manifest is the policy, not the lock.

Safeguard offers MCP Guardrail and agent identity for applying this kind of policy to agent tool calls, and you can run a free scan of your own repositories at gold.safeguard.sh/scan. Autonomous fix pull requests are off by default, and every category starts on Manual.

Quick check

Should every agent have its own manifest?

Yes. Separate files keep owners, scopes and review dates distinct, and a change to one agent never alters another.

Does a manifest replace logging?

No. The manifest says what is allowed, and logs show what happened. You need both to answer an audit question.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.