shadcn-ui MCP Skill
MCP Server: @jpisnice/shadcn-ui-mcp-server
Status: Installed and configured
Frameworks: React, Svelte, Vue, React Native
What This Skill Does
Provides direct access to the shadcn/ui v4 component library through an MCP server. Query components, get usage examples, explore complete blocks (dashboards, forms), and retrieve metadata—all via natural language.
When to Use This Skill
- Building UI with React, Svelte, Vue, or React Native
- Need production-ready, accessible component foundations
- Want to see component demos and usage patterns
- Need dependency information for components
- Building dashboards, forms, or complex UI blocks
- Comparing component implementations across frameworks
What shadcn-ui Provides
Components
- 50+ production-ready UI components
- Full TypeScript definitions
- Accessibility built-in (ARIA, keyboard navigation)
- Radix UI primitives under the hood
- Tailwind CSS styling
Blocks
- Complete dashboard implementations
- Form templates with validation
- Calendar and date picker blocks
- Authentication flows
- Data table examples
Metadata
- Component dependencies
- Configuration requirements
- Installation instructions
- Peer dependencies
- Usage examples
How to Query Components
Basic Component Query
"Show me the shadcn button component"
"Get the shadcn card component"
"What's the shadcn dialog component?"
Framework-Specific Query
"Show me the shadcn button for React"
"Get the shadcn card for Svelte"
"What's the shadcn select for Vue?"
Block Query
"Show me the shadcn dashboard block"
"Get the shadcn form block"
"What blocks are available in shadcn?"
Metadata Query
"What dependencies does shadcn select need?"
"How do I install the shadcn button?"
"What peer dependencies does shadcn dialog require?"
Multi-Framework Support
One of shadcn-ui's unique advantages: same component logic, different framework implementations.
| Framework |
Example Query |
| React |
"Show me shadcn button for React" |
| Svelte |
"Show me shadcn button for Svelte" |
| Vue |
"Show me shadcn button for Vue" |
| React Native |
"Show me shadcn button for React Native" |
Component Categories
Form Components
- Button, Input, Textarea
- Select, Checkbox, Radio Group
- Switch, Slider
- Form, Label
- Date Picker, Calendar
Layout Components
- Card, Separator
- Accordion, Tabs
- Sheet, Dialog, Drawer
- Collapsible, Resizable
Navigation
- Navigation Menu, Breadcrumb
- Dropdown Menu, Context Menu
- Command, Menubar
Feedback
- Alert, Toast, Progress
- Skeleton, Badge
- Alert Dialog
Data Display
- Table, Data Table
- Avatar, Tooltip
- Hover Card, Popover
Usage Workflow
1. Query for Component
User: "Show me the shadcn button component"
2. Review Component Details
You'll get:
- TypeScript source code
- Component props and variants
- Usage examples
- Dependencies required
- Configuration needed
3. Implement and Customize
- Copy base component structure
- Apply your own styling/theming
- Customize variants as needed
- Add project-specific logic
Example: Building a Dashboard
Step 1: Query Blocks
"Show me the shadcn dashboard block"
What you get:
- Complete dashboard layout
- Pre-configured components (cards, tables, charts)
- Navigation structure
- Responsive grid system
Step 2: Query Individual Components
"Show me shadcn card component"
"Show me shadcn table component"
Step 3: Customize
- Apply your design system colors
- Modify typography
- Adjust spacing and layout
- Add custom functionality
Dependencies and Installation
Check Dependencies
"What dependencies does the shadcn select component need?"
Response includes:
- Required packages (@radix-ui/react-select, etc.)
- Peer dependencies (React, Tailwind CSS)
- Installation commands
- Configuration requirements
Common Dependencies
Most shadcn components require:
- React 18+ (for React version)
- Tailwind CSS 3+
- Radix UI primitives
- class-variance-authority
- clsx, tailwind-merge
Best Practices
✅ DO
Use as Foundation
- shadcn provides structure and accessibility
- Build your unique design on top
Query Before Building
- Check if shadcn has a component before building from scratch
- Save time on accessibility and edge cases
Check Multiple Frameworks
- If switching frameworks, query for that implementation
- Maintain consistent UX across platforms
Use Blocks for Rapid Prototyping
- Dashboard, form, calendar blocks save hours
- Customize blocks to match your brand
Review Metadata
- Check dependencies before installing
- Understand peer dependencies and conflicts
❌ DON'T
Don't Use Components As-Is in Production
- Always customize to match your design system
- Add brand colors, typography, spacing
Don't Skip Accessibility Review
- shadcn provides accessible foundations
- Don't break them with aggressive customizations
Don't Mix Framework Implementations
- Stick to one framework per project
- Cross-framework mixing causes conflicts
Don't Ignore Dependencies
- Review required packages before installation
- Check for version conflicts with existing dependencies
Integration with Other Skills
With frontend-design Skill
frontend-design provides: Bold aesthetics, creative direction, unique design
shadcn-ui provides: Component structure, accessibility, best practices
Workflow:
- Query shadcn-ui for base component
- Apply frontend-design aesthetic transformation
- Result: Production-ready + unforgettable design
With ui-design Skill
ui-design provides: Visual hierarchy, balance, composition rules, color/typography
shadcn-ui provides: Component building blocks
Workflow:
- Query shadcn-ui for components
- Apply ui-design principles (visual weight, balance, hierarchy)
- Result: Well-composed, professional UI
Troubleshooting
Component Not Found
- Try full name: "shadcn-ui button component"
- Specify framework: "button for React"
- Check spelling and naming
Dependency Conflicts
- Review peer dependencies before installation
- Check if Radix UI versions are compatible
- Ensure Tailwind CSS is configured
Framework-Specific Issues
- Verify you're querying for the correct framework
- Check framework-specific documentation
- Review implementation examples
Quick Reference
Query Patterns:
"Show me shadcn [component]"
"Get shadcn [component] for [framework]"
"What's in the shadcn [block] block?"
"What dependencies does shadcn [component] need?"
"How do I install shadcn [component]?"
Common Components:
Button, Card, Input, Select, Dialog, Table, Form, Calendar, Dropdown Menu, Toast, Sheet, Tabs, Accordion, Avatar, Badge, Checkbox, Radio, Switch, Slider
Available Blocks:
Dashboard, Form, Calendar, Authentication, Data Table
Supported Frameworks:
React, Svelte 5, Vue, React Native
Key Takeaways
★ Insight ─────────────────────────────────────
1. shadcn-ui = Production-Ready Foundation
- Accessibility built-in (ARIA, keyboard nav)
- Best practices enforced
- TypeScript definitions included
- Battle-tested component patterns
2. Multi-Framework Consistency
- Same component logic across React, Svelte, Vue, React Native
- Maintain consistent UX when switching platforms
- Faster development across different projects
3. Blocks Save Time
- Complete dashboard, form, calendar implementations
- 60-80% faster scaffolding
- Focus on customization, not structure
4. Always Customize
- shadcn components are STARTING POINTS
- Add your design system (colors, typography, spacing)
- Make it match your brand
- Never ship generic shadcn aesthetics
─────────────────────────────────────────────────`
Resources
1---2name: shadcn-ui3description: Access shadcn/ui v4 component library via MCP server. Query components, blocks, demos, and metadata across React, Svelte, Vue, and React Native frameworks. Use for production-ready, accessible component foundations.4---56# shadcn-ui MCP Skill78**MCP Server:** `@jpisnice/shadcn-ui-mcp-server`9**Status:** Installed and configured10**Frameworks:** React, Svelte, Vue, React Native1112## What This Skill Does1314Provides direct access to the shadcn/ui v4 component library through an MCP server. Query components, get usage examples, explore complete blocks (dashboards, forms), and retrieve metadata—all via natural language.1516## When to Use This Skill1718- Building UI with React, Svelte, Vue, or React Native19- Need production-ready, accessible component foundations20- Want to see component demos and usage patterns21- Need dependency information for components22- Building dashboards, forms, or complex UI blocks23- Comparing component implementations across frameworks2425## What shadcn-ui Provides2627### Components28- 50+ production-ready UI components29- Full TypeScript definitions30- Accessibility built-in (ARIA, keyboard navigation)31- Radix UI primitives under the hood32- Tailwind CSS styling3334### Blocks35- Complete dashboard implementations36- Form templates with validation37- Calendar and date picker blocks38- Authentication flows39- Data table examples4041### Metadata42- Component dependencies43- Configuration requirements44- Installation instructions45- Peer dependencies46- Usage examples4748## How to Query Components4950### Basic Component Query51```52"Show me the shadcn button component"53"Get the shadcn card component"54"What's the shadcn dialog component?"55```5657### Framework-Specific Query58```59"Show me the shadcn button for React"60"Get the shadcn card for Svelte"61"What's the shadcn select for Vue?"62```6364### Block Query65```66"Show me the shadcn dashboard block"67"Get the shadcn form block"68"What blocks are available in shadcn?"69```7071### Metadata Query72```73"What dependencies does shadcn select need?"74"How do I install the shadcn button?"75"What peer dependencies does shadcn dialog require?"76```7778## Multi-Framework Support7980One of shadcn-ui's unique advantages: **same component logic, different framework implementations**.8182| Framework | Example Query |83|-----------|---------------|84| **React** | "Show me shadcn button for React" |85| **Svelte** | "Show me shadcn button for Svelte" |86| **Vue** | "Show me shadcn button for Vue" |87| **React Native** | "Show me shadcn button for React Native" |8889## Component Categories9091### Form Components92- Button, Input, Textarea93- Select, Checkbox, Radio Group94- Switch, Slider95- Form, Label96- Date Picker, Calendar9798### Layout Components99- Card, Separator100- Accordion, Tabs101- Sheet, Dialog, Drawer102- Collapsible, Resizable103104### Navigation105- Navigation Menu, Breadcrumb106- Dropdown Menu, Context Menu107- Command, Menubar108109### Feedback110- Alert, Toast, Progress111- Skeleton, Badge112- Alert Dialog113114### Data Display115- Table, Data Table116- Avatar, Tooltip117- Hover Card, Popover118119## Usage Workflow120121### 1. Query for Component122```123User: "Show me the shadcn button component"124```125126### 2. Review Component Details127You'll get:128- TypeScript source code129- Component props and variants130- Usage examples131- Dependencies required132- Configuration needed133134### 3. Implement and Customize135- Copy base component structure136- Apply your own styling/theming137- Customize variants as needed138- Add project-specific logic139140## Example: Building a Dashboard141142### Step 1: Query Blocks143```144"Show me the shadcn dashboard block"145```146147**What you get:**148- Complete dashboard layout149- Pre-configured components (cards, tables, charts)150- Navigation structure151- Responsive grid system152153### Step 2: Query Individual Components154```155"Show me shadcn card component"156"Show me shadcn table component"157```158159### Step 3: Customize160- Apply your design system colors161- Modify typography162- Adjust spacing and layout163- Add custom functionality164165## Dependencies and Installation166167### Check Dependencies168```169"What dependencies does the shadcn select component need?"170```171172**Response includes:**173- Required packages (@radix-ui/react-select, etc.)174- Peer dependencies (React, Tailwind CSS)175- Installation commands176- Configuration requirements177178### Common Dependencies179Most shadcn components require:180- React 18+ (for React version)181- Tailwind CSS 3+182- Radix UI primitives183- class-variance-authority184- clsx, tailwind-merge185186## Best Practices187188### ✅ DO1891901. **Use as Foundation**191 - shadcn provides structure and accessibility192 - Build your unique design on top1931942. **Query Before Building**195 - Check if shadcn has a component before building from scratch196 - Save time on accessibility and edge cases1971983. **Check Multiple Frameworks**199 - If switching frameworks, query for that implementation200 - Maintain consistent UX across platforms2012024. **Use Blocks for Rapid Prototyping**203 - Dashboard, form, calendar blocks save hours204 - Customize blocks to match your brand2052065. **Review Metadata**207 - Check dependencies before installing208 - Understand peer dependencies and conflicts209210### ❌ DON'T2112121. **Don't Use Components As-Is in Production**213 - Always customize to match your design system214 - Add brand colors, typography, spacing2152162. **Don't Skip Accessibility Review**217 - shadcn provides accessible foundations218 - Don't break them with aggressive customizations2192203. **Don't Mix Framework Implementations**221 - Stick to one framework per project222 - Cross-framework mixing causes conflicts2232244. **Don't Ignore Dependencies**225 - Review required packages before installation226 - Check for version conflicts with existing dependencies227228## Integration with Other Skills229230### With `frontend-design` Skill231```232frontend-design provides: Bold aesthetics, creative direction, unique design233shadcn-ui provides: Component structure, accessibility, best practices234```235236**Workflow:**2371. Query shadcn-ui for base component2382. Apply frontend-design aesthetic transformation2393. Result: Production-ready + unforgettable design240241### With `ui-design` Skill242```243ui-design provides: Visual hierarchy, balance, composition rules, color/typography244shadcn-ui provides: Component building blocks245```246247**Workflow:**2481. Query shadcn-ui for components2492. Apply ui-design principles (visual weight, balance, hierarchy)2503. Result: Well-composed, professional UI251252## Troubleshooting253254### Component Not Found255- Try full name: "shadcn-ui button component"256- Specify framework: "button for React"257- Check spelling and naming258259### Dependency Conflicts260- Review peer dependencies before installation261- Check if Radix UI versions are compatible262- Ensure Tailwind CSS is configured263264### Framework-Specific Issues265- Verify you're querying for the correct framework266- Check framework-specific documentation267- Review implementation examples268269## Quick Reference270271**Query Patterns:**272```273"Show me shadcn [component]"274"Get shadcn [component] for [framework]"275"What's in the shadcn [block] block?"276"What dependencies does shadcn [component] need?"277"How do I install shadcn [component]?"278```279280**Common Components:**281Button, Card, Input, Select, Dialog, Table, Form, Calendar, Dropdown Menu, Toast, Sheet, Tabs, Accordion, Avatar, Badge, Checkbox, Radio, Switch, Slider282283**Available Blocks:**284Dashboard, Form, Calendar, Authentication, Data Table285286**Supported Frameworks:**287React, Svelte 5, Vue, React Native288289---290291## Key Takeaways292293`★ Insight ─────────────────────────────────────`294**1. shadcn-ui = Production-Ready Foundation**295- Accessibility built-in (ARIA, keyboard nav)296- Best practices enforced297- TypeScript definitions included298- Battle-tested component patterns299300**2. Multi-Framework Consistency**301- Same component logic across React, Svelte, Vue, React Native302- Maintain consistent UX when switching platforms303- Faster development across different projects304305**3. Blocks Save Time**306- Complete dashboard, form, calendar implementations307- 60-80% faster scaffolding308- Focus on customization, not structure309310**4. Always Customize**311- shadcn components are STARTING POINTS312- Add your design system (colors, typography, spacing)313- Make it match your brand314- Never ship generic shadcn aesthetics315─────────────────────────────────────────────────`316317## Resources318319- [shadcn/ui Official Docs](https://ui.shadcn.com/)320- [GitHub - shadcn-ui-mcp-server](https://github.com/Jpisnice/shadcn-ui-mcp-server)321- [Radix UI Documentation](https://www.radix-ui.com/)322- [Tailwind CSS Documentation](https://tailwindcss.com/)