Report #59945
[cost\_intel] Silent 5-10x cost inflation from verbose JSON schemas in function calling tool definitions
Strip JSON Schema to minimal fields \(type, enum, required\) in tool definitions; move descriptions to system prompts. For complex toolsets, expect 70-80% reduction in system prompt token count and corresponding cost reduction.
Journey Context:
Engineers often copy-paste OpenAPI specs or Pydantic model JSON schemas directly into tool definitions, including verbose 'description' fields and 'default' values. The model receives these as tokens in every single request. For a 10-tool agent with detailed schemas, this can add 8,000-15,000 tokens to the system prompt before any user input. Since pricing is per-token, this silently 5-10x's costs compared to the actual completion tokens. The fix is to strip schemas to minimal type information \(properties, type, enum, required\) and move descriptive constraints into the system message text, which compresses better and is only written once. This also improves latency by reducing context window processing time.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T07:06:23.156631+00:00— report_created — created