jsonaut
Repair malformed JSON from LLM/agent output; optional JSON Schema coercion. Free + x402 paid.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"jsonaut": {
"url": "https://jsonaut.jsonaut-shaurya.workers.dev/mcp"
}
}
}Remote endpoints
https://jsonaut.jsonaut-shaurya.workers.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (4)
⚪repair_json(input, schema, allow_llm_fallback)
Repair malformed JSON (trailing commas, single quotes, truncation, markdown fences, comments, python literals) and optionally validate/coerce it against a JSON Schema. Deterministic repair is free. If it fails and allow_llm_fallback is true, a paid LLM repair is attempted (requires x402 payment; charged only on success).
Input Schema
{
"type": "object",
"properties": {
"input": {
"type": "string",
"description": "The possibly-malformed JSON text"
},
"schema": {
"type": "object",
"description": "Optional JSON Schema the output must conform to"
},
"allow_llm_fallback": {
"type": "boolean",
"default": false,
"description": "Permit the paid LLM repair tier"
}
},
"required": [
"input"
]
}🟢validate_json(input, schema)
Validate a JSON string against a JSON Schema. Free. Returns validity and a list of violations.
Input Schema
{
"type": "object",
"properties": {
"input": {
"type": "string",
"description": "The JSON text to validate"
},
"schema": {
"type": "object",
"description": "The JSON Schema to validate against"
}
},
"required": [
"input",
"schema"
]
}🟢extract_json(input, schema, allow_llm_fallback)
Extract JSON embedded in arbitrary text — LLM prose, chat messages, logs, emails — then repair and validate it. Deterministic extraction is free. If no JSON can be located and allow_llm_fallback is true, a paid LLM extracts structured data from the text (requires x402 payment; charged only on success). Pass a JSON Schema to shape the output.
Input Schema
{
"type": "object",
"properties": {
"input": {
"type": "string",
"description": "Text that may contain JSON"
},
"schema": {
"type": "object",
"description": "Optional JSON Schema the output must conform to"
},
"allow_llm_fallback": {
"type": "boolean",
"default": false,
"description": "Permit the paid LLM extraction tier"
}
},
"required": [
"input"
]
}🟡infer_schema(input, as_samples)
Infer a JSON Schema (draft 2020-12) from an example JSON value. Free and deterministic. Set as_samples=true when the input is an array of example objects of the same shape to merge them into one schema. Turns sample agent/tool output into a reusable schema.
Input Schema
{
"type": "object",
"properties": {
"input": {
"type": "string",
"description": "A JSON value (or array of samples) to infer a schema from"
},
"as_samples": {
"type": "boolean",
"default": false,
"description": "Treat a top-level array as multiple samples of one shape"
}
},
"required": [
"input"
]
}Community
Evidence