Skip to content
ML Academy

LLMs, GenAI, RAG, agents, evaluation · insight-0631

Expose only the tools a task needs, as an explicit allow-list per route

Evidence type
documented fact
Difficulty
easy
Roles
Applied AI, ML engineer
Industries
banking, saas

Summary: situation, action, reason, boundary

  1. Situation

    One agent configuration registers every available tool (email, database, payments, file system) for all requests.

  2. Action

    Define an allow-list of tools per task type or user role, load only those into the request, and log any attempt to call a tool outside the list.

  3. Reason

    OWASP names excessive agency, giving an LLM system more capability than it needs, as a top LLM application risk; removing unneeded tools removes whole attack paths rather than hoping the model declines them.

  4. Boundary

    Assistants that serve several task types or user roles.

Symptom or risk

A misread instruction or an injected one can reach a powerful tool that the current task never required.

Exceptions

Sandboxed development agents without access to production data or external communication.

Trade-offs

Fewer tools can block legitimate edge cases; route those to a human or a separate, approved flow.

Pitfalls

Allow-listing in the prompt text only; enforce it in the code that executes tool calls.

Lessons and concepts

Claims and their sources