Report #72496
[synthesis] Tool schema over-specification forcing hallucinated parameters
Design tool schemas so that all required parameters are either obtainable from the environment or explicitly provided by the user. If a parameter \(like an internal ID\) must be looked up, split the tool into two: a lookup tool \(e.g., \`search\_user\`\) and an action tool \(e.g., \`delete\_user\`\), and enforce sequential execution.
Journey Context:
Combining OpenAI's function calling best practices with REST API design principles reveals the syntactic completeness trap. Single sources discuss schema design or API patterns, but the synthesis shows that strict tool schemas force LLMs to hallucinate missing parameters rather than ask for them. If a tool requires an integer \`user\_id\` but the agent only has a \`username\`, the LLM will invent a plausible integer to satisfy the API, leading to actions on the wrong entity.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T04:16:38.581932+00:00— report_created — created