# Json Diff — REST API endpoint `json-diff`

Returns the semantic differences between two JSON documents as a list of added, removed and modified paths with their old and new values, plus counts. Compares structure and values, not text lines; key order is ignored by default.

- Category: data
- MCP server: https://mcp.findutils.com/ (Streamable HTTP, no API keys, 120 req/min per IP)
- REST endpoint: POST https://api.findutils.com/api/tools/json-diff/execute (no API keys, 60 req/min per IP)
- Reference page: https://findutils.com/api/json-diff/
- Same tool on the other surface: https://findutils.com/mcp/json-diff/

## Call the endpoint (verified example)

```bash
curl -X POST https://api.findutils.com/api/tools/json-diff/execute \
  -H "Content-Type: application/json" \
  -d '{
    "left": "{\"a\":1,\"b\":2}",
    "right": "{\"a\":1,\"b\":3}"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/json-diff
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `left` | string | yes | The original JSON document (text). |
| `right` | string | yes | The changed JSON document (text). |
| `ignore_key_order` | boolean | no | Sort object keys before comparing so key order does not count as a change. Default: true. Default: `true`. |
| `include_unchanged` | boolean | no | Also list unchanged leaf paths. Default: false. Default: `false`. |

Example arguments (verified):

```json
{
  "left": "{\"a\":1,\"b\":2}",
  "right": "{\"a\":1,\"b\":3}"
}
```

Decoded `left` argument (readability only — send it as a string):

```json
{
  "a": 1,
  "b": 2
}
```

Decoded `right` argument (readability only — send it as a string):

```json
{
  "a": 1,
  "b": 3
}
```

OpenAPI 3.1 spec: https://findutils.com/api/openapi.json · Interactive docs: https://findutils.com/api/docs/

## Also an MCP tool

```bash
claude mcp add findutils --transport http https://mcp.findutils.com/
```

Then ask the client to call `findutils:json_diff`. Full MCP reference: https://findutils.com/mcp/json-diff/

---
Full catalog: GET https://api.findutils.com/api/tools · https://findutils.com/api/ · https://findutils.com/llms.txt
