Mozaic MCP Server
Provides AI assistants access to the ADEO Mozaic Design System, enabling lookups of design tokens, component documentation, icons, and CSS utilities, plus generation of Vue and React component code snippets.
README
Mozaic MCP Server
An MCP (Model Context Protocol) server that exposes the Mozaic Design System by ADEO to Claude and other AI assistants.
View Documentation | Try the Playground
Note: This project is under active development. Contributions and feedback are welcome!
What It Does
This server indexes the entire Mozaic Design System and makes it queryable through MCP tools. AI assistants can:
- Look up design tokens (colors, spacing, typography, etc.)
- Get component documentation with props, slots, events, and examples
- Search and retrieve icons with SVG/React/Vue code
- Search documentation pages
- Generate component code snippets
Quick Start
pnpm install
pnpm build # Compiles TypeScript & builds the database
pnpm start # Starts the MCP server
What's Indexed
| Type | Count | Description |
|---|---|---|
| Design Tokens | 586 | Colors, typography, spacing, shadows, borders, screens, grid |
| Vue Components | 52 | Props, slots, events, examples |
| React Components | 39 | Props, callbacks, examples |
| Icons | 1,473 | SVG icons in 15 categories (354 unique, 5 sizes each) |
| CSS Utilities | 6 | Flexy, Container, Margin, Padding, Ratio, Scroll (500+ classes) |
| Documentation | 281 | MDX pages with full-text search |
Documentation sources:
- Design System docs (220 pages)
- Vue Storybook docs (58 pages) - Getting Started, Usage guides
- React Storybook docs (3 pages) - Getting Started, Usage guides
MCP Tools
Component Tools
| Tool | Description |
|---|---|
get_component_info |
Get Vue/React component details (props, slots, events, examples) |
list_components |
List framework components by category |
generate_vue_component |
Generate Vue component code |
generate_react_component |
Generate React component code |
CSS Utility Tools
| Tool | Description |
|---|---|
get_css_utility |
Get CSS utility classes and examples (Flexy, Margin, etc.) |
list_css_utilities |
List available CSS utilities by category (layout, utility) |
Icon Tools
| Tool | Description |
|---|---|
search_icons |
Search icons by name, type (navigation, media, social), or size (16-64px) |
get_icon |
Get icon details with SVG markup and ready-to-use React/Vue code |
Installation Tools
| Tool | Description |
|---|---|
get_install_info |
Get installation commands, imports, and quick start code for a component (beta) |
Other Tools
| Tool | Description |
|---|---|
get_design_tokens |
Query tokens by category (color, spacing, typography, shadow, border, screen, grid) |
search_documentation |
Full-text search across all docs |
Token Categories
| Category | Count | Examples |
|---|---|---|
| color | 482 | --color-primary-01-100, --color-button-solid-* |
| typography | 60 | --font-size-*, --line-height-* |
| spacing | 19 | $mu025 to $mu1000 (Magic Unit system) |
| screen | 12 | Breakpoints: s, m, l, xl, xxl |
| shadow | 3 | Box shadows with x, y, blur, spread, opacity |
| border | 3 | Border widths |
| radius | 3 | Border radius values |
| grid | 4 | Gutters, magic-unit, rem values |
CSS Utilities
CSS-only layout and utility classes (no Vue/React wrapper). Use get_css_utility tool to get full class lists and examples.
| Utility | Category | Description |
|---|---|---|
| Flexy | layout | Flexbox 12-column grid with responsive classes |
| Container | layout | Responsive container with max-width |
| Margin | utility | Margin utilities using Magic Unit scale |
| Padding | utility | Padding utilities using Magic Unit scale |
| Ratio | utility | Aspect ratio utilities (16:9, 4:3, 1:1, etc.) |
| Scroll | utility | Scroll prevention utility |
Architecture
┌─────────────────────────────────────────────────────────────┐
│ Claude Desktop │
└─────────────────────────┬───────────────────────────────────┘
│ stdio
┌─────────────────────────▼───────────────────────────────────┐
│ MCP Server │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Tools: get_component_info, get_css_utility, ... │ │
│ └─────────────────────────┬───────────────────────────┘ │
│ │ │
│ ┌─────────────────────────▼───────────────────────────┐ │
│ │ SQLite Database │ │
│ │ tokens | components | icons | css_utilities | docs │ │
│ └─────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
▲
│ build
┌─────────────────────────┴───────────────────────────────────┐
│ Source Repositories │
│ mozaic-design-system │ mozaic-vue │ mozaic-react │
└─────────────────────────────────────────────────────────────┘
Scripts
| Script | Description |
|---|---|
pnpm build |
Compile TypeScript and build database |
pnpm build:docs |
Generate documentation diagrams |
pnpm start |
Start the MCP server |
pnpm dev |
Development mode with watch |
pnpm clean |
Remove dist and database |
pnpm test |
Run unit tests |
pnpm database:sanity |
Validate database integrity |
Documentation
- docs/ARCHITECTURE.md - Architecture diagrams and statistics
- docs/TEST.md - Testing guide
Next Steps
Benchmarking: MCP vs Claude Skills
Compare performance and effectiveness of MCP server approach vs native Claude skills:
- [ ] Define benchmark scenarios (component lookup, code generation, documentation search)
- [ ] Measure response accuracy and completeness
- [ ] Compare token usage and latency
- [ ] Evaluate context window efficiency
- [ ] Document trade-offs and recommendations
Release Process
Steps to publish the MCP server:
- [ ] npm registry: Publish to npm (
npm publish) - [ ] Smithery: Submit to smithery.ai MCP marketplace
- [ ] GitHub release: Create tagged release with changelog
- [ ] Claude Desktop config: Document installation in
claude_desktop_config.json - [ ] Version strategy: Define semver policy for database schema changes
Future Improvements
- [ ] Incremental database updates (avoid full rebuild)
- [ ] Watch mode for local development
- [ ] Caching layer for frequently accessed data
- [ ] Support for custom/extended tokens
- [ ] Multi-language documentation support
Version History
Compatibility with Mozaic Design System versions:
| MCP Server | Mozaic Version | Date | Changes |
|---|---|---|---|
1.0.0 |
2.x |
2024-12 | Initial release with Vue 3, React, CSS utils |
Mozaic Repositories Indexed
| Repository | Branch | Description |
|---|---|---|
mozaic-design-system |
main | Tokens, docs, styles |
mozaic-vue |
main | Vue 3 components |
mozaic-react |
main | React components |
Updating for New Mozaic Versions
When a new Mozaic version is released:
- Pull latest changes:
pnpm build(clones/updates repos automatically) - Run sanity check:
pnpm database:sanity - Run tests:
pnpm test - Update version table above
- Tag release:
git tag vX.Y.Z
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.