MCP server for OpenDesign — 1,400+ real design systems with grounded tokens (color, type scale, spacing, layout, motion) extracted from live sites. Gives any AI agent real design taste instead of training-data average.
OpenDesign MCP provides 5 read-only tools with consistent naming (verb_noun pattern: list_, get_, search_) and reasonable descriptions (100-180 chars). All tools have input schemas with types and descriptions. However, output schemas are not documented in the source code provided, and parameter descriptions lack actionable constraints (e.g., no enum values shown for 'sort' parameter despite enum declaration, no format guidance for 'id' parameter). Error handling and recovery guidance are absent. The server is well-structured for a design-system catalog but lacks production-grade polish in schema completeness and error messaging.
Get information about a design pack (ZIP file) for a site, including file listing, download URL, and metadata
Get detailed design system specification for a specific site by ID, including colors, typography, spacing, layout, motion, components, and system prompt
Get all available tags in the design system catalog with counts
List all design systems in the OpenDesign catalog with optional filtering by tag, search query, or sort mode
Search design systems by keyword, returning matching sites with their core metadata
Output schemas not documented. LLMs cannot plan downstream calls or extract required fields (e.g., does list_sites return site_id, title, tags, image?). Without documented return types, agents must guess field names.
No error handling or recovery guidance. Tools lack descriptions of failure modes (e.g., 'site not found', 'invalid language code'). Agents receive no actionable next steps on errors.
Parameter descriptions lack actionable constraints. 'sort' parameter declares enum ['curated','popular','random'] but description does not explain what each mode does or when to use it. 'id' parameter lacks format guidance (e.g., 'lowercase alphanumeric, 2-20 chars').
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
get_pack description is vague ('Get information about a design pack'). Does not clarify what 'information' includes or when to call it vs get_site. Lacks dependency hint (e.g., 'Call get_site first to verify the site exists').
No pagination guidance for list_sites and search_sites. Default limit=50 and limit=20 are reasonable, but no mention of total count, next_cursor, or how to fetch remaining results. Large catalogs (1,400+ sites) risk context window exhaustion.