Report #42104
[cost\_intel] Complex tool definitions inflate context tokens more than the tools save in output
Minimize tool schemas to required fields only with additionalProperties: false; replace verbose descriptions with 2-3 shot examples in the user message; collapse large enums \(>20 items\) into regex patterns
Journey Context:
The LLM receives the full JSON Schema of every available tool in every request. A detailed 500-line schema for a 'search\_orders' tool with nested objects and verbose descriptions consumes 2000\+ tokens \(~$0.06\) per call. If the tool execution only saves 100 tokens of output versus prompting without tools, and the tool is called 10 times in a conversation, the net cost is 20k tokens burned to save 1k. Common error is auto-generating schemas from TypeScript types without pruning descriptions. The alternative is to use legacy 'functions' instead of 'tools' \(smaller payload\) or dynamic schema compression. The right call is strict minimal schemas with examples provided separately.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T01:08:36.051504+00:00— report_created — created