Cleanor Tools

by cleanor-app

251 downloads
Not rated
GitHub Website

About

Zero-auth hosted MCP for AI builders — 22 tools: image optimize/convert (WebP/AVIF/JPEG), QR, cited Cleanor Labs storage & image-format data, plus 18 deterministic dev utilities (hash, HMAC, UUID, JWT, JSON, regex, cron, datetime, color, diff…) LLMs get wrong. No API key.

Details

Author
cleanor-app
Downloads
251
Categories
Developer Tools

- Zero‑auth, hosted, and free MCP server
- Optimize images to WebP, AVIF, or JPEG (optional resize)
- Return cited research on storage capacity and format savings
- 22 read‑only tools for image, data, and developer operations
- Streamable HTTP transport, no API key required
- All responses link sources on cleanor.app

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Cleanor Tools
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Connect any MCP client to the Streamable HTTP endpoint https://mcp.cleanor.app/mcp. Alternatively, run the server locally via npx using the @cleanor/mcp package. Example configurations for Claude Code, Cursor, and Claude Desktop are provided in the README.

optimize_image

Fetch an image from a public URL and re-encode it smaller (WebP/AVIF/JPEG), optionally resizing to a target width. Returns the optimized image plus before/after byte sizes. Use this when an AI-generated or dropped-in asset (hero image, screenshot, illustration) is too large to ship.

storage_capacity

How many photos or minutes of video actually fit in a given storage size, corrected for real OS/filesystem overhead. Backed by Cleanor Labs measured per-item sizes. Use for realistic sample copy, dashboards, or "how many photos fit in 128 GB" answers.

image_format_savings

How much smaller WebP, AVIF or JPEG XL are than JPEG at matched perceptual quality, from Cleanor Labs’ controlled benchmark. Also reports the "HEIC conversion tax" (converting an iPhone HEIC to JPG/PNG makes it bigger). Use to justify a format choice when building a site or app.

qr_code

Encode text or a URL as a QR code and return a crisp, dependency-free SVG you can paste straight into a page, deck or doc.

hash

Compute a cryptographic hash of text (SHA-1, SHA-256, SHA-384 or SHA-512) and return the hex digest. Use for checksums, cache keys, or verifying content. MD5 is intentionally not offered (broken, and unavailable in Web Crypto). LLMs cannot compute these reliably by hand, so always use this tool instead of guessing.

uuid

Generate one or more UUIDs. v4 is fully random; v7 is time-sortable (recommended for database keys). LLMs cannot produce cryptographically random or correctly-formatted UUIDs, so always use this tool.

base64

Encode text to Base64 or decode Base64 back to text (UTF-8 safe). Supports URL-safe alphabet. Use whenever you need to encode/decode data URIs, tokens, or config values instead of guessing the bytes.

json_format

Validate JSON and pretty-print or minify it, optionally sorting object keys. Returns a precise parse error (with position) if invalid. Use to check and clean JSON instead of eyeballing it.

jwt_decode

Decode a JSON Web Token into its header and payload so you can inspect claims (iss, exp, sub, scopes). The signature is NOT verified and no secret is required or stored. Use to read a token during debugging.

color

Convert a color (hex, rgb() or hsl()) and return hex, RGB and HSL representations at once. Use when picking or translating colors for CSS, design tokens or themes.

slugify

Turn a title or phrase into a clean, URL-safe slug (lowercase, hyphenated, accents stripped). Use when generating page paths, filenames or anchor IDs.

count

Accurately count characters (Unicode code points), UTF-16 units, words, lines and UTF-8 bytes in text. LLMs are notoriously bad at counting, so always use this tool for "how many characters/words" questions.

regex_test

Test a JavaScript regular expression against sample text and return whether it matches, plus every match with its captured groups and index. Use to verify a pattern instead of reasoning about it in your head. Input and pattern are length-capped to keep it fast and safe.

cron_describe

Parse a standard 5-field cron expression (minute hour day-of-month month day-of-week) into a plain-English breakdown and the next few run times in UTC. Use to sanity-check a schedule instead of guessing what the fields mean.

unit_convert

Convert a value between units of length, mass, data size, time, speed or temperature. Supported units: mm, cm, m, km, in, ft, yd, mi, nmi, mg, g, kg, t, oz, lb, st, bit, byte, kb, kib, mb, mib, gb, gib, tb, tib, ms, s, min, h, day, week, mps, kph, mph, fps, knot, c, f, k. Use for exact conversions instead of approximating.

datetime

Get the current date/time, or convert a given timestamp, into a target IANA timezone with ISO, Unix and human-readable forms. Pass a Unix timestamp (seconds or ms) or an ISO string as input; omit it for "now". LLMs cannot know the real current time, so use this instead of guessing.

url_parse

Break a URL into its components: scheme, host, port, path, decoded query parameters and fragment. Use to inspect or debug a URL instead of parsing it by eye.

base_convert

Convert an integer between number bases 2–36 (e.g. hex to binary, decimal to base-36). Arbitrary precision via BigInt, so large values stay exact. Use for radix conversions instead of doing them by hand.

diff

Compute a line-by-line diff between two texts, marking removed lines with "-", added with "+" and unchanged with two spaces, plus a change count. Use to see exactly what changed instead of comparing by eye. Capped at 1000 lines per side.

hmac

Compute an HMAC (keyed hash) of a message with a secret, using SHA-1/256/384/512, returned as hex or Base64. Use to sign webhook payloads or verify a signature instead of guessing. LLMs cannot compute this by hand.

placeholder_image

Generate a lightweight SVG placeholder image at any size, with an optional label and custom background/text colors. Dependency-free, pastes straight into a page or mockup. Use for wireframes and design stubs instead of hotlinking a placeholder service.

color_palette

Build a harmonious color palette from a base color using color-theory rules (complementary, analogous, triadic, tetradic, or monochromatic). Returns each color as hex and HSL. Use to derive a theme or design tokens from one brand color.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "cleanor tools": {
            "cleanor": {
                "url": "https://mcp.cleanor.app/mcp"
            }
        }
    }
}

McpServers

{
    "cleanor": {
        "url": "https://mcp.cleanor.app/mcp"
    }
}

Cleanor MCP

smithery badge npm DOI

Zero-auth, hosted Model Context Protocol server for AI builders.

Two things no popular MCP does well, in one server:

1. Actually optimize the images your AI just generated or a user dropped in (WebP / AVIF / JPEG, optional resize) — returns the smaller bytes plus before/after sizes.
2. Hand back real, cited Cleanor Labs research data — device storage capacity, next-gen image-format savings, and the "HEIC conversion tax".

No API key. No signup. Every response links its source on cleanor.app.

- Endpoint (Streamable HTTP): https://mcp.cleanor.app/mcp
- Official MCP Registry: app.cleanor/cleanor
- Homepage: https://mcp.cleanor.app

Tools

| Tool | What it does |
|---|---|
| optimize_image | Fetch an image URL → re-encode smaller (WebP/AVIF/JPEG), optional resize. Returns the optimized image + before/after bytes. |
| storage_capacity | How many photos / minutes of video fit in a given GB tier, corrected for real OS/filesystem overhead. Backed by the photo-storage-capacity study. |
| image_format_savings | How much smaller WebP / AVIF / JPEG XL are than JPEG at matched quality, plus the HEIC → JPG/PNG conversion tax. From Cleanor's controlled benchmark. |
| qr_code | Text or URL → a crisp, dependency-free SVG QR code you can paste anywhere. |
| hash | SHA-1/256/384/512 hex digest of text. |
| hmac | Keyed HMAC signature (SHA family), hex or Base64. |
| uuid | UUID v4 (random) or v7 (time-sortable). |
| base64 | Base64 encode/decode, UTF-8 + URL-safe. |
| json_format | Validate and pretty-print or minify JSON, optional key sort. |
| jwt_decode | Decode a JWT header + payload (no verification). |
| regex_test | Test a regex and return every match and captured group. |
| cron_describe | Explain a cron expression and list the next runs. |
| unit_convert | Length, mass, data, time, speed, temperature. |
| datetime | Current time or a timestamp in any IANA timezone. |
| url_parse | Break a URL into scheme, host, path, query, fragment. |
| base_convert | Integers between bases 2–36 (BigInt-exact). |
| diff | Line-by-line diff of two texts with a change count. |
| color | Convert a color between hex, RGB and HSL. |
| color_palette | Harmonious palette from one base color. |
| placeholder_image | Sized SVG placeholder with a label and colors. |
| slugify | Clean, URL-safe slug from a title. |
| count | Exact characters, words, lines and UTF-8 bytes. |

The first four are image + cited-data tools; the remaining 18 are deterministic developer utilities for the operations LLMs get wrong. All 22 tools are read-only and safe to expose to autonomous agents.

Connect

Claude Code (CLI):

claude mcp add --transport http cleanor https://mcp.cleanor.app/mcp

Cursor (.cursor/mcp.json), Claude Desktop, VS Code, and most clients:

{
  "mcpServers": {
    "cleanor": {
      "url": "https://mcp.cleanor.app/mcp"
    }
  }
}

Stdio-only clients can run the server locally via npx — no bridge needed. Published on npm as @cleanor/mcp:

{
  "mcpServers": {
    "cleanor": {
      "command": "npx",
      "args": ["-y", "@cleanor/mcp"]
    }
  }
}

Local image optimization uses sharp (an optional dependency); the data and QR tools work regardless.

About

Built and hosted by Cleanor Labs — free, private, in-browser tools (files never leave your device) plus original research on device storage and image formats. The MCP server is a thin, hosted front door to that toolset and data for AI agents.

- Free browser tools: https://cleanor.app/tools
- Original research / studies: https://cleanor.app/research

License

MIT © Cleanor Labs

Citation

If you use Cleanor MCP or its data, please cite it. Authored by Cleanor Labs, ORCID 0009-0005-4623-961X. The archived, citable version has DOI 10.5281/zenodo.21225551 (concept DOI, always resolves to the latest release).

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.