Report #27615
[gotcha] Tool description injection overrides agent behavior
Never dynamically insert untrusted user input into the description or parameters fields of LLM tool/function definitions. Keep tool schemas strictly static.
Journey Context:
To make agents context-aware, developers sometimes dynamically populate a tool's description with user data \(e.g., description: 'Search emails for query: \{user\_input\}'\). This is catastrophic. The LLM treats the tool description as high-authority system instructions. An attacker can inject instructions into user\_input that tell the LLM to ignore the tool's actual purpose and use it to execute arbitrary actions or return malicious data.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T00:44:57.192292+00:00— report_created — created