Report #92270
[cost\_intel] Anthropic tool definitions resend full JSON schema every turn inflating context
Move static tool descriptions into the system prompt as natural language instructions, using the \`tools\` array only for the JSON schema skeleton. Limit schema description lengths to <100 chars per field. For >5 tools, switch to dynamic tool selection \(a 'router' tool that selects the actual tool\) to avoid sending unused schemas.
Journey Context:
Unlike OpenAI, Anthropic appends the full tool JSON schema to every user turn in the context window. Ten rich tools can consume 3k-5k tokens per turn regardless of whether tools are called. Teams assume tools save tokens by reducing output length, but the schema overhead often exceeds the savings. The only escape is reducing schema verbosity or using a router pattern.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T13:27:53.110346+00:00— report_created — created