# Bookmarks Json To Html — MCP tool `findutils:bookmarks_json_to_html`

Convert a bookmarks JSON file into a Netscape bookmarks.html that Chrome, Firefox, Edge and Safari import. Reads three shapes: the Chromium profile file named Bookmarks (Chrome, Edge, Brave; no extension; roots.bookmark_bar / other / synced, date_added in microseconds since 1601), a Firefox JSON backup (text/x-moz-place containers with uri and dateAdded in microseconds since 1970), and a plain tree of {title|name, url|uri|href, children} objects or an array of them. Folder nesting and root folders are kept, dates are converted to the Unix seconds bookmarks.html uses, entries with no address and separators are skipped and counted. Other formats are refused, and nothing is fetched.

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

## 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": "bookmarks_json_to_html",
      "arguments": {
        "input": "{\"roots\":{\"bookmark_bar\":{\"name\":\"Bookmarks bar\",\"type\":\"folder\",\"children\":[{\"name\":\"Example\",\"type\":\"url\",\"url\":\"https://example.com/\",\"date_added\":\"13245678900000000\"}]},\"other\":{\"name\":\"Other bookmarks\",\"type\":\"folder\",\"children\":[]},\"synced\":{\"name\":\"Mobile bookmarks\",\"type\":\"folder\",\"children\":[]}},\"version\":1}"
      }
    }
  }'
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `input` | string | yes | The bookmarks JSON text. |
| `include_synced` | boolean | no | Include the Mobile / synced bookmarks root (Chromium synced, Firefox mobile). Default true. Default: `true`. |
| `include_other` | boolean | no | Include the Other bookmarks root (Chromium other, Firefox unfiled). Default true. Default: `true`. |
| `include_dates` | boolean | no | Write each bookmark's ADD_DATE when the JSON has one. Default true. Default: `true`. |

Example arguments (verified):

```json
{
  "input": "{\"roots\":{\"bookmark_bar\":{\"name\":\"Bookmarks bar\",\"type\":\"folder\",\"children\":[{\"name\":\"Example\",\"type\":\"url\",\"url\":\"https://example.com/\",\"date_added\":\"13245678900000000\"}]},\"other\":{\"name\":\"Other bookmarks\",\"type\":\"folder\",\"children\":[]},\"synced\":{\"name\":\"Mobile bookmarks\",\"type\":\"folder\",\"children\":[]}},\"version\":1}"
}
```

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

```json
{
  "roots": {
    "bookmark_bar": {
      "name": "Bookmarks bar",
      "type": "folder",
      "children": [
        {
          "name": "Example",
          "type": "url",
          "url": "https://example.com/",
          "date_added": "13245678900000000"
        }
      ]
    },
    "other": {
      "name": "Other bookmarks",
      "type": "folder",
      "children": []
    },
    "synced": {
      "name": "Mobile bookmarks",
      "type": "folder",
      "children": []
    }
  },
  "version": 1
}
```

## Also a REST endpoint

```bash
curl -X POST https://api.findutils.com/api/tools/bookmarks-json-to-html/execute \
  -H "Content-Type: application/json" \
  -d '{
    "input": "{\"roots\":{\"bookmark_bar\":{\"name\":\"Bookmarks bar\",\"type\":\"folder\",\"children\":[{\"name\":\"Example\",\"type\":\"url\",\"url\":\"https://example.com/\",\"date_added\":\"13245678900000000\"}]},\"other\":{\"name\":\"Other bookmarks\",\"type\":\"folder\",\"children\":[]},\"synced\":{\"name\":\"Mobile bookmarks\",\"type\":\"folder\",\"children\":[]}},\"version\":1}"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/bookmarks-json-to-html
```

Full REST reference: https://findutils.com/api/bookmarks-json-to-html/ · 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
