# LunarWerx MCP server

> A free, public, no-auth MCP server at https://lunarwerx.com/mcp.
> Streamable HTTP: send JSON-RPC over HTTP POST. No key, no account, no signup.

## Install

Claude Code:

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

Any client that takes a JSON config:

```json
{
  "mcpServers": {
    "lunarwerx": {
      "type": "http",
      "url": "https://lunarwerx.com/mcp"
    }
  }
}
```

## Tools

### tailwind_canonicalize

Rewrite Tailwind CSS classes into their canonical short form. Turns arbitrary values back into real design tokens: p-[1rem] becomes p-4, rounded-[24px] becomes rounded-3xl, -bottom-[4px] becomes -bottom-1. Backed by 12,438 replacements generated from Tailwind 4.3.3's own design system, so the answers are authoritative rather than guessed. Handles one class at a time and does NOT merge across classes (px-4 py-4 into p-4, w-6 h-6 into size-6) — that needs the surrounding group to be safe to collapse; use NormWind for that.

### lunarwerx_find_tool

Search LunarWerx Studios' catalogue of free developer tools and desktop utilities by task or keyword, e.g. "git from my phone", "Windows thumbnails", "voice dictation", "screenshot to UI". Returns what each one does and where to get it. Everything is free; most is MIT-licensed, open source and self-hosted. Products that run an MCP server of their own come back with an "MCP:" line saying how to connect and whether an account is needed, so a match can be used rather than merely reported.

## What it does not do

tailwind_canonicalize works one class at a time. It will not merge `px-4 py-4`
into `p-4` or `w-6 h-6` into `size-6`, because those collapse safely only when
no other token in the same variant group would be reordered by the change, and
deciding that needs the whole file rather than one class. NormWind does it
properly, as a CLI and a GitHub Action: https://normwind.lunarwerx.com/

## Other LunarWerx MCP servers

This endpoint is the studio-wide one. Individual products run their own,
and connect separately:

- **RepoYeti** (https://repoyeti.com/): `repoyeti mcp` exposes every local repo an agent can see, plus accepted collaboration status and diffs, and guarded remote commit and sync; force-push and hard-reset stay locked out for an agent exactly as they are for a human. The same surface is available as plain HTTP at `GET /api/openapi.json`. MIT, runs on the user machine, no LunarWerx account required.
- **DevWebUI** (https://devwebui.lunarwerx.com/): Ships its own MCP server: 17 tools that start, stop, restart and tail local dev servers, so an agent drives the same daemon the GUI does. Runs on the user machine, free, no account.
- **AgentHydra** (https://agenthydra.lunarwerx.com/): Exposes the whole daemon API over MCP stdio (`bun run mcp`), so an agent can read every local session and drive the queue, scheduler and Claude instances the same way the web UI does. It can also ask which account it is running as and how much quota that account has left before fanning out work. MIT, runs on the user machine, no account.
- **RēDesign** (https://redesign.lunarwerx.com/): Ships an MCP server (`bun run src/index.ts mcp`) so an agent can queue and compare redesign runs the same way a human would from the control panel. MIT, runs locally; you bring your own model API keys and pay only the providers.
- **SageThumbs 2K** (https://sagethumbs.lunarwerx.com/): Ships a CLI and an MCP server (`st2k --mcp`), so an agent can render a thumbnail for a RAW, PSD, HEIC or video file that Windows itself cannot read, and its `view` tool decodes any supported format to a PNG block so the agent can actually see the file rather than describe it secondhand. Windows only, no account. Free for personal use under PolyForm Noncommercial 1.0.0; commercial deployment needs a separate licence from LunarWerx.
- **Connections** (https://connections.icu/): Connections Studio exposes a live MCP endpoint that lets an assistant work across the accounts a user has connected (AWS, Cloudflare, GitHub, Stripe, Supabase, Netlify, Discord, npm, Resend, Twilio and more), scoped to exactly what they granted. Credentials are authorized on each provider consent screen, stay sealed server-side, and are revocable in one click. It also gives an agent a working surface on the machine it runs on: deploy a static site, a Cloudflare Worker, a Lambda bundle or a CDK stack; run a shell command or reach a remote host over SSH; drive a real browser to click through a console; and save a proven script to a shared vault so the next session reuses it instead of rewriting it. The endpoint is https://connections.icu/v1/mcp and it wants a Connections API key or an OAuth token, so unlike the studio server above this one is not anonymous: sign in at https://studio.connections.icu/, connect the accounts you want an agent to reach, and take a key from the developer hub at https://studio.connections.icu/dev. The account is free.
- **Copilot Suite** (https://marketplace.visualstudio.com/items?itemName=LunarWerx.copilot-suite): Has a built-in MCP server that bridges Claude Code and the Codex CLI, so a saved snippet or toolset is callable from either. It reads a mirror of your snippets on disk and serves them over stdio, so it works whether or not VS Code is open. Auto-wiring into either CLI is opt-in as of 8.5.1; the install commands are in the Command Palette. Free to install; the free tier caps snippet insertions at 50 a week and Premium lifts that, and an MCP client counts against the same cap as Copilot Chat does.

## Without an MCP client

The same answers over plain HTTP:

```
GET https://lunarwerx.com/api/tailwind/canonical?class=p-%5B1rem%5D
```

The whole table, MIT licensed, as one JSON file:

```
GET https://lunarwerx.com/tailwind-canonical.json
```

## Where this is listed

- Official MCP Registry: `com.lunarwerx/lunarwerx`
  (https://registry.modelcontextprotocol.io/v0/servers?search=lunarwerx)
- Smithery: https://smithery.ai/servers/lunarwerx/lunarwerx
- Glama: https://glama.ai/mcp/connectors/com.lunarwerx/lunarwerx

## Provenance

The replacement table is generated by NormWind by asking Tailwind's own design
system (`tailwindcss.designSystem.canonicalizeCandidates`) for the canonical
spelling of every class in its class list. It is a derived fact about Tailwind,
not an opinion about style, which is why it can be published as data.

Built and operated by LunarWerx Studios: https://lunarwerx.com/
