About Ensemble
Ensemble is an MCP server for AI agents that builds coordinated design systems from a brand color. It covers palettes, typography, layout, effects and accessibility, with exports in common design formats.
Key features
- 01Generate coordinated color palettes
- 02Pair fonts and create type scales
- 03Build spacing, grid and shadow systems
- 04Create motion settings and dark themes
- 05Check WCAG contrast and accessibility
- 06Export design tokens to CSS, JSON, Tailwind or SCSS
Use cases
- 01Create a design system from a brand color
- 02Select compatible heading and body fonts
- 03Review palette contrast before implementation
- 04Export tokens for a project
MCP support
The MCP server exposes design-generation, export and accessibility tools to MCP clients. Most builders use the Ensemble API; a11y_validate works without an API key.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @hearthbyte/ensemble-mcpENSEMBLE_API_KEYSecretEnsemble Pro API key (hearthbyte.dev/ensemble/pricing). Without it only the free a11y_validate tool works.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
10Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| color | string | Yes | Brand color in hex (e.g. #6366F1). The whole system is built from it. |
| colors | array | No | Additional brand colors in hex (up to 5 colors in total, including `color`). |
| preferences | object | No | Other design preferences, so tools called separately stay consistent with each other. Pass the same values to every tool. |
| preferences.corners | enum | No | Corner radius character (default rounded)sharp | rounded | pill |
| preferences.density | enum | No | Spacing density (default balanced)compact | balanced | airy |
| preferences.type_style | enum | No | Typography character (default modern)modern | classical | minimalist | expressive |
| preferences.color_scheme | enum | No | How the palette is derived (default analogous)monochromatic | analogous | complementary | triadic | split-complementary |
| preferences.animation_style | enum | No | Motion character (default minimal)none | minimal | fluid | energetic |
| preferences.shadow_intensity | enum | No | Shadow strength (default subtle)flat | subtle | pronounced | dramatic |
| color_scheme | enum | No | How the palette is derived from the brand color (default analogous)monochromatic | analogous | complementary | triadic | split-complementary |
Details
From the project READMEWhat is this?
Ensemble MCP is a Model Context Protocol server that gives AI agents access to professional design tools. Generate color palettes, pair typography, create shadow systems, and export complete design tokens - all through natural conversation.
10 tools. One API. Infinite possibilities.
| Tool | What it does | Its main argument |
|---|---|---|
harmony_generate_palette | A full color system from one brand color | color_scheme |
duet_pair_fonts | Heading, body and mono fonts with a type scale | type_style |
tempo_generate_scale | A spacing system tuned to the type | density |
chord_generate_shadows | Elevation shadows tinted by the palette | shadow_intensity |
cadence_generate_grid | Responsive grid: breakpoints, columns, gutters | density |
riff_generate_motion | Durations, easing curves and transition presets | animation_style |
bridge_generate_theme | A complete dark mode from the light system | color |
pitch_audit_contrast | Which palette pairs pass WCAG, and what to fix | color |
compose_export | The whole system as CSS, JSON, Tailwind or SCSS | formats |
a11y_validate | Check one color pair for accessibility (FREE, no key needed) | foreground, background |
Every builder takes a brand color and an optional preferences object, so tools called
separately agree with each other. Results are deterministic: the same color and preferences
always give the same system.
------|--------------|
| harmony_generate_palette | Generate harmonious color palettes from a single color |
| duet_pair_fonts | Pair heading and body fonts that complement each other |
| tempo_generate_scale | Create type scales and spacing systems |
| chord_generate_shadows | Generate 5-level shadow elevation systems |
| bridge_generate_theme | Auto-generate dark mode from light theme colors |
| cadence_set_grid | Configure CSS Grid layouts with presets |
| pitch_create_gradient | Create linear, radial, and conic gradients |
| riff_set_easing | Set cubic-bezier easing curves |
| compose_export | Export complete design system (CSS, Tailwind, SCSS, JSON) |
| a11y_validate | Check color contrast accessibility (FREE, no key needed) |
Quick Start
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"ensemble": {
"command": "npx",
"args": ["-y", "@hearthbyte/ensemble-mcp"],
"env": {
"ENSEMBLE_API_KEY": "your-api-key-here"
}
}
}
}
Cursor / Cline
{
"ensemble": {
"command": "npx",
"args": ["-y", "@hearthbyte/ensemble-mcp"],
"env": {
"ENSEMBLE_API_KEY": "your-api-key-here"
}
}
}
Manual Installation
npm install -g @hearthbyte/ensemble-mcp
ensemble-mcp
Example Prompts
Once installed, try these with your AI:
"Generate a triadic color palette from #6366F1"
"Give me a classical font pairing and an airy spacing system to go with it"
"Check if #FFFFFF text on #6366F1 background is accessible"
"Build a design system from #0F766E with dramatic shadows and export it as Tailwind config"
"Audit the contrast of the palette you just made and tell me what fails"
API Key
The builders call the Ensemble API, which needs a Pro key ($4.99/month, or $39/year).
Free tool: a11y_validate - accessibility validation with no API key required.
Design Philosophy
Ensemble tools are built on these principles:
- One color in, design system out - Start with a single value, get a complete system
- Cross-tool sync - Colors flow to typography, typography informs spacing
- Export everywhere - CSS, Tailwind, SCSS, JSON
- Accessibility first - WCAG 2.1 + APCA checking built in
Links
- 🌐 Ensemble Web Tools - Use in browser, no install
- 📖 API Documentation
- 🤖 WebMCP Spec
Built with 🧡 by HearthByte
Your work. Your choice. Always.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.