A Model Context Protocol (MCP) server for shadcn/ui components, providing AI assistants with access to component source code, demos, blocks, and metadata.
Server provides 10 tools with consistent naming (verb_noun pattern) and reasonable descriptions (avg ~100 chars). All tools have input schemas with type definitions. However, parameter descriptions are sparse or generic, output schemas are undocumented, and error handling lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications. Descriptions meet minimum length but lack LLM-optimization details (e.g., when to call, dependencies, expected output structure).
Apply a TweakCN theme preset to the project
Get source code for a specific shadcn/ui v4 block (e.g., calendar-01, dashboard-01)
Get the source code for a specific shadcn/ui v4 component
Get demo code illustrating how a shadcn/ui v4 component should be used
Get metadata for a specific shadcn/ui v4 component
Get the directory structure of the shadcn-ui v4 repository
Get details of a specific tweakcn theme
Output schemas not documented. Tools return data but LLMs cannot predict field names, types, or structure. Forces agents to guess or fail on downstream tool chaining.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). apply_theme is marked WRITE but lacks destructiveHint; read-only tools lack readOnlyHint. Agents cannot infer safety/retry semantics.
Parameter descriptions are minimal or absent. 'componentName' and 'blockName' lack context (e.g., case sensitivity, valid format, where to find names). 'path' in get_directory_structure lacks examples or constraints.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Get all available shadcn/ui v4 blocks with categorization
Get all available shadcn/ui v4 components
List available tweakcn themes
No error handling or recovery guidance. Tools do not document what happens if a component/block/theme is not found, or how to recover. Agents have no fallback strategy.
apply_theme lacks dry-run confirmation. Destructive write operation (modifies project files) should support dryRun=true by default or require explicit confirmation to prevent accidental overwrites.