io. github. KarstenKreh/ standby-design-mcp
by KarstenKreh · remote · local (npm) · no sign-in to list tools · v0.5.0 · published by GitHub user KarstenKreh
Generate design systems: OKLCH colors, fluid type scales, spacing, shape, icon and motion tokens.
10 tools: 7 change things and 3 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things7Claude Code: ask: see these tools
- Only reads3Claude Code: allow: see these tools
7 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http standby-design https://mcp.standby.design/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "generate_color_palette" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_color_palette" says "generate": a word for a change.
The server marks "generate_type_scale" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_type_scale" says "generate": a word for a change.
The server marks "generate_shape_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_shape_tokens" says "generate": a word for a change.
The server marks "generate_icon_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_icon_tokens" says "generate": a word for a change.
The server marks "generate_space_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_space_tokens" says "generate": a word for a change.
The server marks "generate_motion_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_motion_tokens" says "generate": a word for a change.
Show 1 more findingShow fewer
The server marks "export_design_system" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The description's first verb is "generate": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
10 tools
Changes things 7Claude Code: ask
export_design_systemGenerate the full token code for a design system URL in one format: "css" (CSS custom properties incl.1 finding
Why it is in this group
- The description's first verb is "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "export_design_system" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate the full token code for a design system URL in one format: "css" (CSS custom properties incl. semantic shadcn/ui-compatible tokens), "tailwind" (Tailwind v4 @theme), "design-tokens" (W3C DTCG JSON — typography, spacing & layout, shape, icons and motion; color is not part of it), "llm-briefing" (Markdown brief for AI code generation), or "font-embed" (Fontshare <link> snippet). Optionally restrict to specific sections. Every format carries the standby.design/system share link. Always give that URL to the user alongside the code and keep it as a comment in the theme file of the target project — the link is the deliverable.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
generate_color_paletteGenerate a perceptually uniform OKLCH color palette from a brand color: 18-step scales for brand/surface/error/accents, semantic tokens (shadcn/ui compatible), light+dark modes.1 finding
Why it is in this group
- The name "generate_color_palette" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_color_palette" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_color_palette" says "generate": a word for a change.
Description, as the server wrote it Generate a perceptually uniform OKLCH color palette from a brand color: 18-step scales for brand/surface/error/accents, semantic tokens (shadcn/ui compatible), light+dark modes. Returns a shareable standby.design/system URL and a compact summary. Always give that URL to the user — the link is the deliverable; it opens the live system in the browser. Use export_design_system for full CSS/Tailwind output.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
generate_icon_tokensPick an icon set and generate icon sizing tokens (xs–2xl + stroke width).1 finding
Why it is in this group
- The name "generate_icon_tokens" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_icon_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_icon_tokens" says "generate": a word for a change.
Description, as the server wrote it Pick an icon set and generate icon sizing tokens (xs–2xl + stroke width). Either select a specific set or state style preferences and get a recommendation. Available sets: material-outlined, material-filled, lucide, phosphor-regular, phosphor-bold, phosphor-thin, phosphor-fill, solar-linear, solar-bold, solar-broken, tabler-outline, tabler-filled, radix. Returns a shareable standby.design/system URL and a summary. Always give that URL to the user — the link is the deliverable.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
generate_motion_tokensGenerate spring-based motion tokens from two brand-character axes: energy (calm → lively, sets the tempo) and material (firm → elastic, sets how much spatial motion overshoots).1 finding
Why it is in this group
- The name "generate_motion_tokens" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_motion_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_motion_tokens" says "generate": a word for a change.
Description, as the server wrote it Generate spring-based motion tokens from two brand-character axes: energy (calm → lively, sets the tempo) and material (firm → elastic, sets how much spatial motion overshoots). Returns 6 primitive springs (spatial/effect × fast/default/slow), 11 semantic tokens (press, move, expand, enter, exit, fade, navigate.*, sheet.*, container) and the reduced-motion rule. Start from a preset, then fine-tune with energy/material. Returns a shareable standby.design/system URL and a summary. Always give that URL to the user — the link is the deliverable. Use export_design_system for CSS, design tokens or the LLM briefing; SwiftUI, Compose and Motion (JS) code is exported in the UI at standby.design/motion.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
generate_shape_tokensGenerate shape tokens — radii, shadows, borders, focus rings — in one of four visual styles: "paper" (classic surfaces with layered shadows), "glass" (liquid glass), "neomorph" (so…1 finding
Why it is in this group
- The name "generate_shape_tokens" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_shape_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_shape_tokens" says "generate": a word for a change.
Description, as the server wrote it Generate shape tokens — radii, shadows, borders, focus rings — in one of four visual styles: "paper" (classic surfaces with layered shadows), "glass" (liquid glass), "neomorph" (soft neumorphism), "neobrutalism" (hard offset shadows). Returns a shareable standby.design/system URL and a summary. Always give that URL to the user — the link is the deliverable.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
generate_space_tokensGenerate spacing tokens (3xs–3xl), breakpoints, container widths, prose measure, and aspect ratios.1 finding
Why it is in this group
- The name "generate_space_tokens" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_space_tokens" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_space_tokens" says "generate": a word for a change.
Description, as the server wrote it Generate spacing tokens (3xs–3xl), breakpoints, container widths, prose measure, and aspect ratios. Returns a shareable standby.design/system URL and a summary. Always give that URL to the user — the link is the deliverable.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
generate_type_scaleGenerate a fluid typographic scale (CSS clamp() between 375px and 1920px viewports) with 11 levels (Display, H1–H6, Body L/M/S, Caption), Fontshare fonts, line heights and letter s…1 finding
Why it is in this group
- The name "generate_type_scale" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_type_scale" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "generate_type_scale" says "generate": a word for a change.
Description, as the server wrote it Generate a fluid typographic scale (CSS clamp() between 375px and 1920px viewports) with 11 levels (Display, H1–H6, Body L/M/S, Caption), Fontshare fonts, line heights and letter spacing. Returns a shareable standby.design/system URL and a summary table. Always give that URL to the user — the link is the deliverable. Use list_fonts to discover font slugs.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
Only reads 3Claude Code: allow
get_design_rulesUniversal design rules for building UI with design tokens: layout, flow (empty, loading and error states, dialogs), shape, surfaces, interaction and keyboard access, forms, content…No findings
Why it is in this group
- The name "get_design_rules" says "get": a word for reading.
Description, as the server wrote it Universal design rules for building UI with design tokens: layout, flow (empty, loading and error states, dialogs), shape, surfaces, interaction and keyboard access, forms, content structure, states, typography, color and stack rules for Tailwind/React Native. The tokens say which values exist; these rules say how to use them. Call this before building or reviewing views. Without arguments it returns every rule as one line (62 rules); pass rules (slugs) or a category with detail "full" for the complete text including how to detect violations in code. Rule texts are in German. Categories: Layout, Fluss, Form, Fläche, Bedienung, Formular, Inhalt, Zustand, Typografie, Farbe, Stack.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
get_design_systemDecode a standby.design URL (or raw hash) and return an overview of the full design system: color palette, type scale, spacing & layout, shape tokens, motion springs, and icons — p…No findings
Why it is in this group
- The name "get_design_system" says "get": a word for reading.
Description, as the server wrote it Decode a standby.design URL (or raw hash) and return an overview of the full design system: color palette, type scale, spacing & layout, shape tokens, motion springs, and icons — plus per-tool edit links. Always give the standby.design/system URL to the user — the link is the deliverable.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
list_fontsList Fontshare font slugs usable in generate_type_scale (headingFont/bodyFont/monoFont), grouped by category.No findings
Why it is in this group
- The name "list_fonts" says "list": a word for reading.
Description, as the server wrote it List Fontshare font slugs usable in generate_type_scale (headingFont/bodyFont/monoFont), grouped by category. This is the bundled seed catalog — any valid Fontshare slug works even if not listed here.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 0.5.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http standby-design https://mcp.standby.design/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__standby-design__get_design_system",
"mcp__standby-design__list_fonts",
"mcp__standby-design__get_design_rules"
],
"ask": [
"mcp__standby-design__generate_color_palette",
"mcp__standby-design__generate_type_scale",
"mcp__standby-design__generate_shape_tokens",
"mcp__standby-design__generate_icon_tokens",
"mcp__standby-design__generate_space_tokens",
"mcp__standby-design__generate_motion_tokens",
"mcp__standby-design__export_design_system"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as standby-design. Review it before you use it.
