JSON Schema 2020-12 inferred from sample JSON ($0.002/call)
json_schema_infer$0.002 per call (x402, USDC on Base; free trial: add "trial": true or use try_free). [Data utilities] Infers a JSON Schema (2020-12) from 1-1,000 sample documents: types with null and integer vs number, properties, required (keys present in every sample), array items, string formats (date-time, date, email, uri, uuid, ipv4, ipv6) when every value matches, optional enums and strict mode. Input: json (one document or an array of samples; POST for large input), optional samples, enums, strict. Limits: 1 MB, depth 64. Pair with json-validate. Offline.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"json": "<json>"
},
"name": "json_schema_infer"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| json | Yes | JSON text, up to 1 MB (a JSON value is also accepted in a POST body or MCP arguments) | |
| enums | No | yes: add enum for string fields with at most 10 distinct values, each seen at least twice (default no) | no |
| trial | No | Optional. true = free if a trial call is left (3 per IP per UTC day), else the payment terms. | |
| strict | No | yes: additionalProperties false on every object (default no) | no |
| samples | No | auto (default): a top-level array of objects is a list of samples; yes: the top-level array is a list of samples; no: the whole input is one sample | auto |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tool | No | ||
| cache | No | ||
| notes | No | ||
| stats | No | ||
| _trial | No | Present when the call was a free trial call. | |
| schema | No | ||
| provider | No | ||
| price_usd | No | ||
| sample_count | No | ||
| samples_mode | No |