Plug-and-play MCP that gives your coding agent UI superpowers. One-line install, zero config. Claude Code, Codex, Cursor, VS Code, and more.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add designer-skill -- npx -y skills{
"mcpServers": {
"designer-skill": {
"command": "npx",
"args": ["-y", "skills"]
}
}
}MCP Servers overview
<div align="center">
<img src="docs/designer-skill-mcp-logo.webp" alt="designer-skill-mcp" width="580" />
**Plug-and-play MCP. UI superpowers for your agent.**
[](https://www.npmjs.com/package/@pymodel/designer-skill-mcp)
[](https://www.npmjs.com/package/@pymodel/designer-skill-mcp)
[](https://github.com/PyModel/designer-skill/actions/workflows/test.yml)
[](LICENSE)
[](https://skills.sh/pymodel/designer-skill)
<br />
[](#tools)
[](#references)
[](#tools)
[](designer-skill-mcp/package.json)
[](#setup)
[Setup](#setup) · [How it works](#how-it-works) · [References](#references) · [Tools](#tools) · [Development](#development)
</div>
## Setup
[](#setup)
**Paste into your agent** (Claude Code, Codex, Cursor, any MCP client). It installs the skill, wires the MCP and verifies the tools:
```text
Add designer-skill alongside Niblet Designer UI. The designer core is keyless: it routes requests, loads guidance and runs supplemental static checks. Niblet optionally supplies real screens and licensed materials; the host owns implementation and rendered verification.
1. Install or refresh the skill into the user skill directory (not this project):
npx skills add PyModel/designer-skill --skill designer-skill -g -y
2. Add the local MCP using this client's native MCP configuration, in the user-level (not project-level) config:
Name: designer-skill
Transport: stdio
Command: npx
Args: -y @pymodel/designer-skill-mcp@latest
No API key is needed. Do not add one.
3. Verify: list the designer-skill server's tools and confirm get_preflight_brief, dispatch_intent, review_and_gate are present. Do not run a sample check.
When setup is complete, confirm the skill is installed and the three named tools are exposed. On UI work: call get_preflight_brief, use dispatch_intent and load only relevant guidance. If an unresolved visual question warrants retrieval, use the separately configured niblet server's discovered tools. Prefer its image content for inspection; designer-skill's catalogue wrappers return metadata or routing guidance only. Run review_and_gate as supplemental static evidence, then perform the required rendered, functional and accessibility checks in the host. Never treat static success as UI PASS. Preserve audit/plan scope. Continue an active authorized task; otherwise report designer-skill ready, and report Niblet paired only if its tools were actually observed.
```
No Niblet? Continue from local product evidence; catalogue retrieval is optional.
**Or pick one:**
| | Install |
|---|---|
| 🟣 **Claude Code plugin** (skill + MCP) | `/plugin marketplace add PyModel/designer-skill` then `/plugin install designer-skill@pymodel` |
| 🟢 **Codex plugin** | `codex plugin marketplace add PyModel/designer-skill`, then install **designer-skill** from **pymodel** in `/plugins` |
| ⚫ **Cursor plugin** | Install from the marketplace; ships `mcp.json`, skills, `/designer-setup` · `/designer-status` |
| 🔵 **MCP only, any client** | `claude mcp add designer-skill -- npx -y @pymodel/designer-skill-mcp` (same args for `codex mcp add`, `pythinker mcp add --transport stdio`) |
| 🟠 **Skill only** | `npx skills add PyModel/designer-skill --skill designer-skill` or copy `skills/designer-skill/` into `~/.claude/skills/` / `~/.codex/skills/` |
Canonical MCP config ([`mcp.json`](mcp.json)):
```json
{ "mcpServers": { "designer-skill": { "command": "npx", "args": ["-y", "@pymodel/designer-skill-mcp@latest"] } } }
```
`@latest` tracks npm; teams pin `@pymodel/designer-skill-mcp@0.22.0`. Plugin skill content updates separately (`/plugin update …`). MCP registry name: `io.github.PyModel/designer-skill-mcp`. Requires Node 22+.
<details>
<summary><strong>Per-client config</strong> (VS Code, Codex TOML, Kilo, Open Code, Claude Desktop, Pythinker, Pi)</summary>
**VS Code** `.vscode/mcp.json` (1.99+):
```json
{ "servers": { "designer-skill": { "type": "stdio", "command": "npx", "args": ["-y", "@pymodel/designer-skill-mcp"] } } }
```
**Codex CLI** `~/.codex/config.toml`:
```toml
[mcp_servers.designer-skill]
command = "npx"
args = ["-y", "@pymodel/designer-skill-mcp"]
```
**Open Code** `opencode.json`:
```json
{ "mcp": { "designer-skill": { "type": "local", "command": ["npx", "-y", "@pymodel/designer-skill-mcp"] } } }
```
**Claude Desktop, Cursor (`.cursor/mcp.json`), Kilo Code (`mcp_settings.json`), Pythinker (`~/.pythinker/mcp.json`)**: the canonical `mcpServers` JSON above. Pythinker verify: `pythinker mcp test designer-skill` ([guide](docs/blog/integrating-designer-skill-with-pythinker.md)).
**Pi**: the same JSON, or register the skill natively: `{ "skills": [{ "path": "/path/to/skills/designer-skill/SKILL.md" }] }`
**Local checkout**: replace `npx` with `"command": "node", "args": ["/abs/path/to/designer-skill-mcp/dist/index.js"]`.
</details>
## How it works
[](#how-it-works)
```mermaid
flowchart LR
A[Prompt] --> B[get_preflight_brief]
B --> C[dispatch_intent]
C --> D[get_reference]
D --> E[Build / polish UI]
E --> F[review_and_gate]
F -->|FAIL: fix| E
F -->|static checks pass| G[Rendered checks<br/>by the host]
classDef start fill:#f8fafc,stroke:#94a3b8,color:#18181b
classDef route fill:#eff6ff,stroke:#3b82f6,color:#1e3a8a
classDef know fill:#faf5ff,stroke:#7c3aed,color:#4c1d95
classDef work fill:#fff7ed,stroke:#e87a3d,color:#7c2d12
classDef gate fill:#ecfdf5,stroke:#10b981,color:#065f46
classDef host fill:#fff1f2,stroke:#e11d48,color:#881337
class A start
class B,C route
class D know
class E work
class F gate
class G host
```
| 🔵 Route | 🟣 Know | 🟢 Check |
|---|---|---|
| `dispatch_intent` maps "make it pop" or "it feels off" to design verbs and at most four references. | 24 designer references (type, color, motion, a11y, anti-slop, redesign, worst-case data, dependency selection…) plus 26 `ux/*` references (forms, collaboration, canvas, AI, i18n…). | A 44-rule deterministic detector backs `review_and_gate`, which reports each required rule as ran, unsupported, unresolved or waived. |
The gate is static only: overall status is `FAIL` or `NOT_VERIFIED`, never a rendered-readiness pass. Rendered, accessibility and performance checks stay `NOT_RUN` until the host supplies evidence.
### Niblet ecosystem
| Owner | Responsibility |
|---|---|
| `designer-skill` | One entry point for scope, routing, craft/UX guidance and verification reporting |
| Niblet platform | Real-screen catalogue, recorded design references and license-recorded materials |
| Niblet MCP | Reference images and material retrieval; hosted `get_ui_component` provides React source |
| Agent host | Authorized file/dependency changes, browser/native interaction, rendered inspection and evidence |
Discover tools per server: the same `find_ui_references` name on designer-skill is a **text-only REST wrapper**, not Niblet's image-delivering tool. Prefer Niblet MCP for reference inspection and materials. Do not call both providers for the same question or infer connectivity from installation. Consult [`niblet-catalogue`](skills/designer-skill/reference/niblet-catalogue.md) for deployment differences, bounds and licensing.
Use one product-grounded design contract. Niblet's surface modes (**Persuade, Operate, Read, Experience**) describe the user's job; designer-skill's execution modes (**audit, plan, refine, implement, system**) describe permitted work. They are independent: an Operate surface can receive a read-only audit or an authorized refinement. Existing product tokens, components and real content win over reference aesthetics. Component retrieval does not authorize dependency installation or source writes, and neither MCP certifies rendered quality.
**Example:** *"Use designer-skill to redesign this pricing page without breaking functionality."* → `get_preflight_brief` → `dispatch_intent` → `get_reference` → edit → `review_and_gate`.
<div align="center">
**Built with it:** [pythinker.com](https://pythinker.com)
<a href="https://pythinker.com"><img src="docs/showcase/pythinker-designer-skill-mcp.webp" alt="pythinker.com — built with designer-skill" width="720" /></a>
</div>
## References
[](#references)
| File | Use when | Tier |
|---|---|---|
| `design-principles` | Typography, spacing, color, layout, hierarchy | 🔵 core |
| `differentiation-playbook` | Being distinctive: inverse test, layout menu, named references | 🔵 core |
| `aesthetic-systems` | Picking a look: 5 systems with palettes, fonts, shadows | 🔵 core |
| `motion-and-interaction` | Timing, springs, scroll, reduced motion | 🔵 core |
| `engineering-and-performance` | Tokens, a11y, responsive, Core Web Vitals | 🔵 core |
| `avoid-ai-slop` | Ban list, category-reflex checks, completeness contract | 🔵 core |
| `refactor-and-redesign` | Audit → diagnose → redesign without breaking behavior | 🔵 core |
| `command-playbook`What people ask about designer-skill
What is PyModel/designer-skill?
+
PyModel/designer-skill is mcp servers for the Claude AI ecosystem. Plug-and-play MCP that gives your coding agent UI superpowers. One-line install, zero config. Claude Code, Codex, Cursor, VS Code, and more. It has 45 GitHub stars and its last recorded update is dated 2026-10-06.
How do I install designer-skill?
+
You can install designer-skill by cloning the repository (https://github.com/PyModel/designer-skill) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is PyModel/designer-skill safe to use?
+
Our security agent has analyzed PyModel/designer-skill and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains PyModel/designer-skill?
+
PyModel/designer-skill is maintained by PyModel. The last recorded GitHub activity is dated 2026-10-06, with 6 open issues.
Are there alternatives to designer-skill?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy designer-skill to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/pymodel-designer-skill)<a href="https://claudewave.com/repo/pymodel-designer-skill"><img src="https://claudewave.com/api/badge/pymodel-designer-skill" alt="Featured on ClaudeWave: PyModel/designer-skill" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
The fastest path to AI-powered full stack observability, even for lean teams.