stitch-mcp-create-design-system
npx machina-cli add skill gabelul/stitch-kit/stitch-mcp-create-design-system --openclawStitch MCP — Create Design System
Creates a new Stitch Design System — a reusable theme configuration that can be applied to any screen. This bridges the gap between local CSS token extraction (via stitch-design-system) and Stitch-native design tokens that persist across generations.
Critical prerequisite
Only use this skill when the user explicitly mentions "Stitch".
When to use
- After extracting CSS tokens via
stitch-design-systemand wanting to persist them in Stitch - User wants consistent theming across multiple screens or projects
- The orchestrator's Step 7 offers to create a Stitch Design System from extracted tokens
- User explicitly asks to create a design system in Stitch
Call the MCP tool
{
"name": "create_design_system",
"arguments": {
"designSystem": {
"displayName": "SaaS Dashboard Theme",
"theme": {
"colorMode": "LIGHT",
"font": "DM_SANS",
"roundness": "ROUND_EIGHT",
"saturation": 3,
"customColor": "#6366F1",
"backgroundLight": "#FFFFFF",
"backgroundDark": "#18181B",
"description": "Professional SaaS aesthetic — clean, indigo accent, airy spacing"
},
"designTokens": "--color-primary: #6366F1;\n--color-bg: #FFFFFF;\n--font-family: 'DM Sans';",
"styleGuidelines": "Use indigo for interactive elements. Gray-50 backgrounds for cards. 8px border radius."
},
"projectId": "3780309359108792857"
}
}
Parameter reference
designSystem — required object
| Field | Type | Required | Description |
|---|---|---|---|
displayName | string | Yes | Human-readable name for the design system |
theme | DesignTheme | Yes | Visual configuration — see below |
designTokens | string | No | CSS custom properties or token definitions |
styleGuidelines | string | No | Natural-language design rules |
theme (DesignTheme) — the visual configuration
| Field | Type | Values | Description |
|---|---|---|---|
colorMode | enum | LIGHT, DARK | Base appearance mode |
font | enum | See font list below | Primary typeface |
roundness | enum | ROUND_FOUR, ROUND_EIGHT, ROUND_TWELVE, ROUND_FULL | Border radius scale |
saturation | int | 1–4 | Color vibrancy (1 = muted, 4 = vivid) |
customColor | string | Hex color | Primary brand color |
backgroundLight | string | Hex color | Light mode background |
backgroundDark | string | Hex color | Dark mode background |
preset | string | — | Optional preset theme name |
description | string | — | Brief aesthetic description |
Available fonts (28 options)
Sans-serif: INTER, DM_SANS, GEIST, SORA, MANROPE, RUBIK, MONTSERRAT, WORK_SANS, SPACE_GROTESK, PLUS_JAKARTA_SANS, PUBLIC_SANS, SOURCE_SANS_THREE, NUNITO_SANS, ARIMO, HANKEN_GROTESK, IBM_PLEX_SANS, SPLINE_SANS, LEXEND, EPILOGUE, BE_VIETNAM_PRO, METROPOLIS
Serif: NOTO_SERIF, NEWSREADER, DOMINE, LIBRE_CASLON_TEXT, EB_GARAMOND, LITERATA, SOURCE_SERIF_FOUR
projectId — optional, numeric only
✅ "3780309359108792857"
❌ "projects/3780309359108792857"
If provided, associates the design system with a specific project. If omitted, creates a global design system.
Mapping CSS tokens to DesignTheme
When creating from extracted design-tokens.css:
| CSS Variable | → DesignTheme field |
|---|---|
--color-primary | customColor |
--color-bg or --bg-light | backgroundLight |
--bg-dark | backgroundDark |
--font-family | font (map to closest enum value) |
--radius or --border-radius | roundness (4px→FOUR, 8px→EIGHT, 12px→TWELVE, 16px+→FULL) |
Output
Returns an Asset object with a name field — store this for future update_design_system and apply_design_system calls:
{
"name": "assets/ds_abc123",
"displayName": "SaaS Dashboard Theme",
"designSystem": { ... }
}
After creating
- Store the
namevalue (e.g.,assets/ds_abc123) — you'll need it for apply/update - Offer: "Apply this design system to existing screens?" →
stitch-mcp-apply-design-system - The orchestrator stores this for automatic application in Step 5b
Source
git clone https://github.com/gabelul/stitch-kit/blob/main/skills/stitch-mcp-create-design-system/SKILL.mdView on GitHub Overview
Creates a reusable Stitch Design System from theme tokens (colors, fonts, roundness, saturation) to apply across future screens. This MCP step persists extracted tokens into a Stitch-native design system so visuals stay consistent across projects. Use this only when the user explicitly mentions Stitch.
How This Skill Works
You call the MCP tool with a designSystem payload that defines displayName, theme, designTokens, and optional styleGuidelines and projectId. The system maps CSS tokens to Stitch DesignTheme fields (colorMode, font, roundness, saturation, etc.), producing a token set that can be reused across screens. This ensures token-driven theming remains consistent beyond a single screen.
When to Use It
- After extracting CSS tokens via stitch-design-system and wanting to persist them in Stitch
- You need consistent theming across multiple screens or projects using a Stitch Design System
- The orchestrator's Step 7 offers to create a Stitch Design System from extracted tokens
- You explicitly ask to create a design system in Stitch
- You want to associate the design system with a specific Stitch project by providing a projectId
Quick Start
- Step 1: Extract CSS tokens with stitch-design-system (if not already done)
- Step 2: Prepare a designSystem object with displayName, theme, designTokens, and styleGuidelines; include projectId if targeting Stitch
- Step 3: Call MCP tool with the designSystem payload to create and apply the Stitch Design System
Best Practices
- Verify design tokens are complete and aligned with theme (colorMode, font, radius, saturation) before calling MCP
- Use a clear displayName and an intentional description for future discoverability
- Ensure designTokens reflect CSS vars that map to DesignTheme fields
- Provide a sensible styleGuidelines string to enforce design rules
- Validate the resulting design system in both light and dark modes
Example Use Cases
- SaaS dashboard theme with indigo accent and softly rounded cards
- Admin panel across multiple modules sharing the same design tokens
- Mobile-first dashboard maintaining consistent radii and font choices
- Global design system persisted for all projects via projectId
- Tokens exported from stitch-design-system used to bootstrap a Stitch DS after handoff