JSON to TOON MCP Server
Converts JSON data to TOON (Token-Oriented Object Notation) format and back, reducing token usage by 30-60% for more efficient LLM applications.
README
JSON to TOON MCP Server
A Model Context Protocol (MCP) server that provides tools for converting JSON data to TOON (Token-Oriented Object Notation) format. TOON is a token-efficient format designed specifically for LLM applications, reducing token usage by 30-60% compared to JSON.
Features
- JSON to TOON Conversion: Convert JSON data to TOON format with customizable options
- TOON to JSON Conversion: Convert TOON format back to JSON
- Token Savings Analysis: Analyze potential token savings before conversion
- MCP Protocol Support: Full MCP server implementation for integration with LLM applications
Quick Start
1. Install the Package
npm install -g json-to-toon-mcp-server
2. Configure Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"json-to-toon": {
"command": "npx",
"args": ["json-to-toon-mcp-server"]
}
}
}
3. Restart Claude Desktop
Restart Claude Desktop and the MCP server will be available.
Installation
npm install
Usage
Running the Server
npm start
The server runs on stdio and can be connected to any MCP client.
Available Tools
1. convert_json_to_toon
Converts JSON data to TOON format.
Parameters:
json_data(string, required): JSON data to convertoptions(object, optional): Conversion optionsdelimiter(string): Delimiter for tabular arrays (default: ",")indentation(string): Indentation string (default: " ")show_length_markers(boolean): Show length markers [N] for arrays (default: true)
Example:
{
"json_data": "{\"users\": [{\"id\": 1, \"name\": \"Alice\"}]}",
"options": {
"delimiter": ",",
"show_length_markers": true
}
}
2. convert_toon_to_json
Converts TOON format back to JSON.
Parameters:
toon_data(string, required): TOON data to convert
Example:
{
"toon_data": "users[1]{id,name}:\n 1,Alice"
}
3. analyze_token_savings
Analyzes potential token savings when converting JSON to TOON.
Parameters:
json_data(string, required): JSON data to analyze
Example:
{
"json_data": "{\"users\": [{\"id\": 1, \"name\": \"Alice\"}]}}"
}
Example Conversions
JSON to TOON
JSON Input:
{
"users": [
{ "id": 1, "name": "Alice", "role": "admin" },
{ "id": 2, "name": "Bob", "role": "user" }
]
}
TOON Output:
users[2]{id,name,role}:
1,Alice,admin
2,Bob,user
Token Savings
The TOON format typically reduces token usage by 30-60% compared to JSON, making it ideal for LLM applications where token efficiency is important.
Development
Running Tests
npm test
Development Mode
npm run dev
Integration with MCP Clients
This server can be integrated with any MCP-compatible client. The server communicates via stdio, making it suitable for integration with various LLM applications and development tools.
Manual Configuration for Claude Desktop
To add this MCP server to Claude Desktop manually, add the following configuration to your claude_desktop_config.json file.
Config file locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
To add this MCP server to Claude Desktop manually, add the following configuration to your claude_desktop_config.json:
{
"mcpServers": {
"json-to-toon": {
"command": "npx",
"args": ["json-to-toon-mcp-server"],
"env": {}
}
}
}
Alternative configuration using local installation:
{
"mcpServers": {
"json-to-toon": {
"command": "node",
"args": ["/path/to/json-to-toon-mcp-server/index.js"],
"env": {}
}
}
}
Configuration for development (from source):
{
"mcpServers": {
"json-to-toon": {
"command": "node",
"args": ["index.js"],
"cwd": "/path/to/json-to-toon-mcp-server"
}
}
}
Configuration Notes
- Replace
/path/to/json-to-toon-mcp-serverwith the actual path to your installation - The
npxmethod requires the package to be installed globally (npm install -g json-to-toon-mcp-server) - The server communicates via stdio, so no additional network configuration is needed
- After adding the configuration, restart Claude Desktop for changes to take effect
TOON Format Benefits
- Token Efficient: 30-60% fewer tokens than JSON
- LLM-Friendly: Structured format that's easy for LLMs to parse
- Lossless: Full bidirectional conversion between JSON and TOON
- Human Readable: Maintains readability while being compact
- Schema Aware: Explicit structure declarations help with validation
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.