# Har To Curl — MCP tool `findutils:har_to_curl`

Convert a HAR (HTTP Archive) file into curl commands, one per recorded request, and return them as a script plus a per-request list. Each command carries the method, URL, request headers (pseudo-headers, Host, Connection, and Content-Length are skipped), optional cookies, and the request body. Output uses short flags by default; long_form switches to --request, --header, --cookie, --data.

- Category: network
- 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/har-to-curl/execute (no API keys, 60 req/min per IP)
- Reference page: https://findutils.com/mcp/har-to-curl/
- Same tool on the other surface: https://findutils.com/api/har-to-curl/

## Connect

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

Claude Desktop (`claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "findutils": {
      "url": "https://mcp.findutils.com/"
    }
  }
}
```

## Call the tool (verified example)

```bash
curl -X POST https://mcp.findutils.com/ \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "har_to_curl",
      "arguments": {
        "har": "{\"log\":{\"entries\":[{\"request\":{\"method\":\"GET\",\"url\":\"https://api.example.com/users\",\"headers\":[{\"name\":\"Accept\",\"value\":\"application/json\"}]}}]}}"
      }
    }
  }'
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `har` | string | yes | HAR 1.x JSON text as exported by browser DevTools (an object with log.entries). |
| `include_headers` | boolean | no | Emit -H for each request header. Default: true. Default: `true`. |
| `include_cookies` | boolean | no | Emit -b with the request cookies. Default: false. Default: `false`. |
| `long_form` | boolean | no | Use long flags (--request, --header, --cookie, --data). Default: false. Default: `false`. |

Example arguments (verified):

```json
{
  "har": "{\"log\":{\"entries\":[{\"request\":{\"method\":\"GET\",\"url\":\"https://api.example.com/users\",\"headers\":[{\"name\":\"Accept\",\"value\":\"application/json\"}]}}]}}"
}
```

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

```json
{
  "log": {
    "entries": [
      {
        "request": {
          "method": "GET",
          "url": "https://api.example.com/users",
          "headers": [
            {
              "name": "Accept",
              "value": "application/json"
            }
          ]
        }
      }
    ]
  }
}
```

## Also a REST endpoint

```bash
curl -X POST https://api.findutils.com/api/tools/har-to-curl/execute \
  -H "Content-Type: application/json" \
  -d '{
    "har": "{\"log\":{\"entries\":[{\"request\":{\"method\":\"GET\",\"url\":\"https://api.example.com/users\",\"headers\":[{\"name\":\"Accept\",\"value\":\"application/json\"}]}}]}}"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/har-to-curl
```

Full REST reference: https://findutils.com/api/har-to-curl/ · OpenAPI 3.1 spec: https://findutils.com/api/openapi.json

---
Full catalog: POST https://mcp.findutils.com/ with method `tools/list` · https://findutils.com/mcp/ · https://findutils.com/llms.txt
