grocers-design-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@grocers-design-mcpshow me the ProductTile component"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
grocers-design-mcp
MCP server exposing the Grocers Design System as queryable tools for coding agents.
Hosted on Fly.io. Auth is a single long-lived token embedded in the URL path — no OAuth, no client config beyond pasting the URL.
Live: https://grocers-design-mcp.fly.dev/<TOKEN>/mcp
Health (no auth): https://grocers-design-mcp.fly.dev/health
What it serves
Design tokens — every CSS custom property from the Grocers DS (colors, spacing, radii, shadows, type scale, motion). 101 tokens indexed at boot.
Semantic type classes —
t-h1,t-display,t-body,t-price, etc. (16 ready-to-apply utility classes).UI components — JSX source from the
web,mobile, andadminUI kits. 44 components — Dashboard, KpiCard, OrdersScreen, OrderRow, CartSheet, MProductTile, etc.Brand foundations — content rules (tone, casing, no-emoji), visual rules (red ≠ error, destructive uses ink + type-to-confirm), iconography (Lucide, 2px stroke, 24px grid).
Skill manifest — one-paragraph brand brief for fast agent bootstrap.
Related MCP server: open-design-system-mcp-starter
Tools
Tool | Purpose |
| Discover tokens by category/group |
| Full detail for one token (with |
|
|
| Components by kit (web/mobile/admin) |
| JSX source + metadata |
| README sections: visual/content/iconography/… |
| The SKILL.md manifest |
| Full-text search with pt-BR↔en synonyms |
| Lint CSS/JSX against 11 brand rules |
| Intent → idiomatic component or pattern |
Lint rules in validate_snippet
Rule | Severity | Catches |
| error | Any emoji in source (incl. composed sequences) |
| warning |
|
| warning |
|
| warning |
|
| warning | Brand red near 'erro/error/invalid' → use danger |
| warning | Destructive cue + brand red → ink + type-to-confirm |
| warning |
|
| warning |
|
| warning |
|
| info |
|
| info |
|
| info |
|
Intent map in suggest_component
30 curated entries spanning all three kits plus 5 non-component patterns
(destructive-action, error-state, price-display, icon-usage,
tone-of-voice). Kit inference from natural language ("mobile", "painel",
"web") biases the ranking.
Using with Claude Code
Add to ~/.claude.json or project .mcp.json:
{
"mcpServers": {
"grocers-design": {
"type": "http",
"url": "https://grocers-design-mcp.fly.dev/<TOKEN>/mcp"
}
}
}The token lives in fly secrets and rotates via
fly secrets set GROCERS_MCP_TOKEN=$(openssl rand -hex 32) -a grocers-design-mcp.
Quick example flow (agent building a Grocers admin screen)
1. get_foundations({section:"visual"}) → brand rules
2. suggest_component({intent:"tabela de pedidos no admin"})
→ admin/OrdersScreen
3. suggest_component({intent:"modal de cancelar pedido"})
→ pattern destructive-action
(ink + type-to-confirm)
4. get_component({name:"OrdersScreen", kit:"admin"})
→ JSX source
5. validate_snippet({snippet: <composed JSX>}) → catch drift before shipLocal dev
npm install
GROCERS_MCP_TOKEN="$(openssl rand -hex 32)" PORT=8080 npm run dev
# Health: http://localhost:8080/health
# MCP: http://localhost:8080/<TOKEN>/mcpArchitecture
Hono +
@hono/node-serverfor HTTP.@modelcontextprotocol/sdk for JSON-RPC / streamable HTTP transport, stateless mode (fresh
McpServerper request — no session state).Token-in-URL middleware:
timingSafeEqualagainstGROCERS_MCP_TOKEN; wrong token returns 404 (not 401 — hides existence).The DS bundle ships inside the container at
bundle/and is indexed once at boot into in-memory maps (O(1) lookups).Fly app runs 2 machines (HA) in
gru, 256MB each, auto-stops when idle.
Deploy
fly deploy -a grocers-design-mcp --remote-onlyLayout
bundle/ # Grocers DS handoff bundle (source of truth)
project/
colors_and_type.css # all design tokens
README.md # foundations
SKILL.md # one-paragraph brand brief
ui_kits/{web,mobile,admin}/ # React/JSX components
preview/*.html # visual specimens (not served by MCP)
src/
index.ts # entrypoint
server.ts # Hono app + token middleware
indexer.ts # CSS + JSX + README parser
tools/
tokens.ts # list_tokens, get_token, list_semantic_classes
components.ts # list_components, get_component
foundations.ts # get_foundations, get_skill
search.ts # search (synonym-aware)
validate.ts # validate_snippet (11 rules)
suggest.ts # suggest_component (30 entries)
Dockerfile
fly.tomlRoadmap
Out of scope for v0.3, candidates for next iteration:
Multi-theme support (Zona Sul and other clients as override layers).
validate_snippet: semantic copy lint (e.g. "Erro: ..." string detection).suggest_component: broader UI primitive coverage (TableHeader, Pagination states, EmptyState variants).get_screen(name): return a parent component + all its children in one call.shadcn/ui compatibility layer (map Grocers semantic tokens →
--primary/--backgroundetc.).
This server cannot be deployed
Maintenance
Related MCP Connectors
Access and maintain design system docs, tokens, components, skills, and contexts across any project.
Serves your design system and coding standards to coding agents, so they stop guessing.
Pull your TasteMaker brand kit + generated Agent Skill into your coding tool. Read-only.
Read-only canon of design and copy rules for AI agents to audit generated UI, served as resources.
Related MCP Servers
- FlicenseAqualityDmaintenanceExposes Levit design system (GDS) metadata to AI coding tools, enabling queries about color tokens and component usage via natural language.11-
- AlicenseNot gradedqualityBmaintenanceProvides a real API for coding agents to look up design system components, props, and tokens, preventing guessed answers.9MIT
- FlicenseNot gradedqualityAmaintenanceEnables coding agents to find real product screen references, fonts, icons, and recorded design-system details for UI work. It also exposes bundled design workflow resources, command prompts, and connection diagnostics.-
- FlicenseNot gradedqualityAmaintenanceEnables coding agents building UI to pull real product screens and design materials from a catalogue, returning inline reference images plus typed structured content such as colors, typography, and components. It also serves bundled skill documents, help, and status resources locally so agents can settle a screen's contract before writing code.-