Back to Browse

Uwarp MCP Server

Developer ToolsModerate6.3MCP RegistryLocal
Free

Server data from the Official MCP Registry

WCAG contrast checks, HSL palettes with :root CSS, and search of 500+ free Uwarp UI tools.

About

WCAG contrast checks, HSL palettes with :root CSS, and search of 500+ free Uwarp UI tools.

Security Report

6.3
Moderate6.3Moderate Risk

The uwarp-mcp server is a small, local-only MCP server offering WCAG contrast checking, HSL palette generation, and search over a bundled JSON catalog. No network calls, shell execution, dynamic code evaluation, or hardcoded secrets were found, and the code matches its stated design-tool purpose. Only informational and low-severity code quality notes were identified, and no authentication is needed because the server requires no paid API. Supply chain analysis found 4 known vulnerabilities in dependencies (0 critical, 4 high severity). Package verification found 1 issue.

7 files analyzed · 8 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

What You'll Need

Set these up before or after installing:

Reserved for a future Uwarp API. **Ignored today** — no paid key needed.Optional

Environment variable: UWARP_API_KEY

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-sherotree-uwarp-mcp": {
      "env": {
        "UWARP_API_KEY": "your-uwarp-api-key-here"
      },
      "args": [
        "-y",
        "uwarp-mcp"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

uwarp-mcp

sherotree/uwarp-mcp MCP server

MCP server for Uwarp — a directory of 500+ free browser UI tools.

This package exposes three local tools you can use from Cursor or Claude Desktop. No paid API key is required. Most Uwarp listings are third-party embeds; this server does not scrape or wrap them. Contrast and palette math run entirely on-device; search_tools reads a bundled local catalog (data/tools.json).

ToolPurpose
check_contrastWCAG 2.x contrast ratio + AA/AAA flags
generate_paletteHSL harmony palettes + :root CSS
search_toolsSearch the local Uwarp tool catalog

Author / context: Sherotree · https://uwarp.design · MIT


Install via npx

No clone needed. Add to your MCP client config (Cursor mcp.json, Claude Desktop, etc.):

{
  "mcpServers": {
    "uwarp": {
      "command": "npx",
      "args": ["-y", "uwarp-mcp"]
    }
  }
}

Requirements

  • Node.js 18+

Install & build

cd /path/to/uwarp-mcp
npm install
npm run build

Test

npm test

Includes a check that black-on-white contrast ≈ 21.

Run locally (stdio)

npm start
# or during development:
npm run dev

The process speaks MCP over stdio (JSON-RPC on stdin/stdout). Log noise goes to stderr.

Optional env stub

VariableNotes
UWARP_API_KEYReserved for a future Uwarp API. Ignored today — no paid key needed.

Cursor (mcp.json)

Add to your Cursor MCP config (e.g. ~/.cursor/mcp.json or project .cursor/mcp.json). Point args at the built entry after npm run build:

{
  "mcpServers": {
    "uwarp": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/uwarp-mcp/dist/index.js"]
    }
  }
}

Example if the project lives at ~/code/uwarp-mcp (use the absolute path):

{
  "mcpServers": {
    "uwarp": {
      "command": "node",
      "args": ["/Users/you/code/uwarp-mcp/dist/index.js"]
    }
  }
}

Restart Cursor (or reload MCP servers) after saving.


Claude Desktop

Edit the Claude Desktop config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "uwarp": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/uwarp-mcp/dist/index.js"]
    }
  }
}

Restart Claude Desktop after saving.


Tool reference

check_contrast

Input

FieldTypeDescription
foregroundstringHex #RGB / #RRGGBB
backgroundstringHex #RGB / #RRGGBB

Output

{
  "ratio": 21,
  "aa_normal": true,
  "aa_large": true,
  "aaa_normal": true,
  "aaa_large": true
}

Uses WCAG 2.x relative luminance and contrast ratio thresholds (AA normal ≥ 4.5, AA large ≥ 3, AAA normal ≥ 7, AAA large ≥ 4.5).

generate_palette

Input

FieldTypeDefaultDescription
seedstring—Seed hex
harmonyanalogous | complementary | triadic | monoanalogousHarmony mode
countnumber6Colors, 3–12

Output

{
  "colors": [{ "name": "Mid Blue", "hex": "#3b82f6" }],
  "css": ":root {\n  --color-1: #3b82f6; /* Mid Blue */\n}"
}

search_tools

Input

FieldTypeDefaultDescription
querystring—Search text
categorystring—Optional filter (e.g. color, svg-generators)
limitnumber8Max results, 1–20

Output

{
  "tools": [
    {
      "name": "Contrast Checker",
      "summary": "…",
      "url": "https://uwarp.design/tools/contrast-checker",
      "category": "color"
    }
  ]
}

Note: search_tools uses the local catalog in data/tools.json (sample entries for development). It does not scrape uwarp.design at runtime.


Project layout

uwarp-mcp/
├── data/tools.json          # Local Uwarp catalog (~28 samples)
├── src/
│   ├── index.ts             # MCP stdio entry
│   └── tools/
│       ├── check_contrast.ts
│       ├── generate_palette.ts
│       └── search_tools.ts
├── tests/
├── dist/                    # After npm run build
├── package.json
├── tsconfig.json
├── LICENSE
└── README.md

License

MIT © Sherotree / Uwarp

Reviews

No reviews yet

Be the first to review this server!