TOON
FreeNot checkedConverts structured data formats into compact tabular notation where field names appear once in headers, reducing token usage by 50-70%.
About
Converts structured data formats into compact tabular notation where field names appear once in headers, reducing token usage by 50-70%.
README
MCP (Model Context Protocol) server for TOON (Token-Oriented Object Notation) encoding. Reduce LLM token usage by 50-70% when sending structured data.
What is TOON?
TOON is a compact data format optimized for LLM input. Instead of repeating field names for every object, it uses a header-based format:
JSON (1041 tokens):
[
{"id": 1, "name": "Product A", "price": 99.99},
{"id": 2, "name": "Product B", "price": 149.99}
]
TOON (389 tokens):
[id,name,price]
1,Product A,99.99
2,Product B,149.99
Result: 62% fewer tokens = 62% cost savings
Installation
Quick Start (npx - no install needed)
Add to your MCP settings:
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"toon": {
"command": "npx",
"args": ["-y", "toon-mcp-server"]
}
}
}
Claude Code (~/.claude/settings.json):
{
"mcpServers": {
"toon": {
"command": "npx",
"args": ["-y", "toon-mcp-server"]
}
}
}
Global Install
npm install -g toon-mcp-server
Then add to your MCP settings:
{
"mcpServers": {
"toon": {
"command": "toon-mcp"
}
}
}
As Claude Code Skill
# Download the skill
curl -o ~/.claude/skills/toon.md https://raw.githubusercontent.com/elminson/toon-mcp/main/skills/toon.md
Then use /toon in Claude Code.
Available Tools
toon_encode
Convert data to TOON format.
Supported formats: JSON, CSV, TSV, XML, HTML tables, YAML
Input: [{"name":"Alice","age":30},{"name":"Bob","age":25}]
Output: [name,age]
Alice,30
Bob,25
toon_decode
Convert TOON back to JSON.
toon_analyze
Analyze data and show potential token/cost savings.
toon_optimize_prompt
Find data sections in a prompt and convert them to TOON automatically.
Usage Examples
In Claude Desktop/Code (with MCP)
Just ask Claude to use the tools:
- "Encode this JSON to TOON: [...]"
- "Analyze how much I'd save converting this data to TOON"
- "Optimize this prompt for token efficiency"
Programmatic (Node.js)
const { ToonEncoder } = require('toon-mcp-server/src/toon-encoder');
// Encode
const data = [
{ id: 1, name: 'Test', price: 99.99 },
{ id: 2, name: 'Test 2', price: 149.99 },
];
const toon = ToonEncoder.encode(data);
// Get stats
const json = JSON.stringify(data);
const stats = ToonEncoder.getStats(json, toon);
console.log(stats.savings.percent); // "64.5%"
// Decode
const decoded = ToonEncoder.decode(toon);
Benchmarks
Tested with OpenAI GPT-4o-mini:
| Dataset Size | JSON Tokens | TOON Tokens | Savings |
|---|---|---|---|
| 5 items | 383 | 192 | 49.9% |
| 20 items | 1,394 | 530 | 62% |
| 50 items | 3,412 | 1,204 | 64.7% |
| 100 items | 6,800 | 2,400 | ~65% |
Cost Savings at Scale
| Volume | GPT-4o-mini | GPT-4o | Claude Sonnet |
|---|---|---|---|
| 1M requests | $489 saved | $8,158 saved | $9,789 saved |
| 10M requests | $4,890 saved | $81,580 saved | $97,890 saved |
When to Use TOON
✅ Best for:
- Arrays of objects with same structure (tables, lists, records)
- API responses, database results
- Large datasets sent to LLMs
- Cost optimization at scale
⚠️ Less effective for:
- Deeply nested, non-uniform data
- Small payloads (<5 items)
- Data with many unique field structures
Contributing
Pull requests welcome! Please open an issue first to discuss changes.
License
MIT
Installing TOON
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/elminson/toon-mcpFAQ
Is TOON MCP free?
Yes, TOON MCP is free — one-click install via Unyly at no cost.
Does TOON need an API key?
No, TOON runs without API keys or environment variables.
Is TOON hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install TOON in Claude Desktop, Claude Code or Cursor?
Open TOON on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare TOON with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
