MCP Server for Mesh Design System providing AI assistants access to Mesh components, design tokens, and placeholder data generation for insurance/healthcare prototyping
This MCP server provides 6 tools for a design system interface with clear verb-starting names (list_, get_, generate_, search_) and functional descriptions. However, there are critical gaps in schema completeness, parameter descriptions, and output documentation. Most tools return JSON strings rather than structured objects, and output schemas are not formally documented. Parameter descriptions are minimal or absent. Error handling exists but lacks actionable recovery guidance. The server sits at the boundary of 'fair but functional', names are good, descriptions adequate, but schemas and composition need work.
Generate realistic placeholder data for insurance/healthcare prototyping (members, policies, claims, providers)
Generate complete React component code using Mesh components based on a description
Fetches detailed information for a specific component including props, examples, and design guidance
Provides core design tokens (colors, typography, spacing) from the Mesh Design System
Provides a comprehensive list of all available UI components in the Mesh Design System
Find relevant Mesh components for specific UI patterns and use cases (e.g., tables, forms, dashboards)
No output schemas documented. All tools return JSON strings; LLMs cannot parse expected fields or plan downstream calls. Critical for tool chaining.
Parameter descriptions are missing or minimal. 'component_name' has description but 'token_type', 'data_type', 'count', 'use_case', 'components' either lack descriptions or are single-line only. LLMs cannot infer valid values or constraints.
No enum constraints on categorical parameters. 'token_type' and 'data_type' accept free-form strings but only specific values are valid (colors, typography, spacing; members, policies, claims, providers). LLMs will hallucinate invalid values.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 48 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 16 | - | v1 |
Error responses return JSON objects but lack actionable recovery guidance. 'Component not found' or 'Data generation failed' does not tell the LLM what to do next (retry, search, ask user). Pattern: recovery-guide missing.
Tool composition risk: generate_prototype_code accepts a free-form 'description' and optional 'components' array. If the LLM passes an invalid component name, the tool will likely fail silently or return unusable code. No validation or error guidance.
list_components has NO input schema at all (empty {}). Tool cannot be validated or constrained.
generate_placeholder_data 'count' parameter is unbounded (no min/max). LLMs could pass 10000 or 1000000, causing memory exhaustion or timeout. Baseline pattern requires bounds (1 - 1000).
generate_prototype_code returns React code as a string with no structure. If the code fails to compile or has syntax errors, the LLM cannot diagnose or correct it. No schema for code generation result (success, code, errors, warnings).