Reduce LLM token costs by 30-60% with TONL format. TypeScript library & CLI with MCP Server for bidirectional JSON/YAML ↔ TONL conversion.
Three tools with complete input schemas and descriptions, but quality is uneven. Tool names follow verb_noun pattern (convert_to_tonl, parse_tonl, calculate_savings). Descriptions are present (40-80 chars) but lack depth on WHEN to use each tool and what downstream operations they enable. Parameter descriptions exist but are minimal (15-40 chars). No output schemas documented, LLMs cannot plan chained calls or extract specific fields. No error handling guidance. Missing idempotency hints for stateless operations. Tool composition is reasonable (three distinct concerns), but descriptions don't explain dependencies or typical workflows.
Calculate token savings and ROI for TONL compression.
Convert JSON data to TONL format. Reduces token usage by 30-60%.
Parse TONL format back to JSON. Reverses the compression.
No output schemas documented. LLMs cannot infer what fields convert_to_tonl, parse_tonl, or calculate_savings return, preventing downstream tool chaining and field extraction.
Descriptions lack WHEN-to-use guidance. 'Convert JSON data to TONL format' does not explain when an agent should call this vs parse_tonl, or what the token savings claim (30-60%) means in context.
Parameter descriptions are minimal (15-40 chars). 'JSON data to convert (string or stringified JSON)' is vague, does the tool accept both raw objects and JSON strings? What happens if parsing fails?
No error handling guidance. If convert_to_tonl receives invalid JSON or parse_tonl receives malformed TONL, what should the LLM do? Retry? Ask the user? No recovery path documented.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
calculate_savings accepts optional queriesPerDay but no guidance on typical ranges or how to estimate. LLMs may pass absurd values (0, 1000000) without constraints.