The shadcn MCP (Model Context Protocol) server enables AI assistants (like Claude Code) to interact with 82+ component registries through natural language. This guide shows you how to achieve maximum productivity with this powerful setup.
Your components.json is now configured with the complete official registry list:
Animation & Visual Effects (8 registries)
@magicui- 150+ animated components with Motion@magicui-pro- Premium animated components@motion-primitives- Motion-driven primitives@animate-ui- Fully animated React components@8bitcn- Retro 8-bit styled components@wigggle-ui- Playful wiggle animations@smoothui- Smooth transition components@kokonutui- Modern animated components
AI & Chat (3 registries)
@assistant-ui- Radix-style primitives for AI chat@ai-elements- Full-stack AI components@simple-ai- Simple AI integration components
Rich Text & Editors (3 registries)
@plate- AI-powered rich text editor@prosekit- Prose editing components@shadcn-editor- Document editor components
Authentication & User Management (1 registry)
@clerk- Complete auth and user management
Business & Payments (3 registries)
@billingsdk- SaaS billing and subscriptions@paykit-sdk- Unified payment SDK (Stripe, PayPal, etc.)@stripe- Stripe integration components
Forms & Data (5 registries)
@formcn- Advanced form components@hooks- Custom React hooks@nuqs- URL query state management@better-upload- File upload components@utilcn- Utility components
Design Styles (9 registries)
@retroui- Neobrutalism/retro style@cult-ui- Rare, curated headless components@aceternity- Modern Tailwind components@fancy- Premium fancy components@creative-tim- Professional UI kit@97cn- Minimalist design system@diceui- Playful dice-themed components@lytenyte- Light/dark optimized components@reui- Refined elegant components
Data Visualization & Maps (2 registries)
@shadcn-map- Interactive map components@svgl- SVG logo collection
Search & Discovery (1 registry)
@algolia- Site search components
Specialized Components (10 registries)
@blocks- Pre-built page blocks@shadcnblocks- Ready-made sections@lens-blocks- Component blocks@elements- Full-stack components with auth, uploads, AI@elevenlabs-ui- Voice/audio components@prompt-kit- AI prompt components@react-bits- React component bits@react-market- Marketplace components@nativeui- Native-style components@supabase- Supabase integration components
Developer Tools (5 registries)
@shadcn-studio- Component builder@basecn- Base components@efferd- Developer utilities@oui- Opinionated UI components@ha-components- High-availability components
International/Regional (6 registries)
@aliimam- Custom collection@alexcarpenter- Personal collection@bucharitesh- Custom components@ncdai- Vietnamese-focused components@wandry-ui- Ukrainian components@chisom-ui- Custom collection
Full UI Kits & Systems (15 registries)
@mui-treasury- Material-UI components@austin-ui- Complete UI kit@kibo-ui- Modern UI system@kanpeki- Perfect UI components@paceui- Fast UI components@rigidui- Structured UI system@roiui- ROI-focused components@solaceui- Calm, peaceful UI@scrollxui- Scroll-based components@systaliko-ui- System UI components@skiper-ui- Skip navigation components@skyr- Sky-themed components@spectrumui- Spectrum design system@tailark- Tailwind-based components@wds- Web design system
Theme & Configuration (2 registries)
@tweakcn- Theme customization@shadcndesign- Design templates
Miscellaneous (9 registries)
@alpine- Alpine.js components@eldoraui- Eldora UI components@heseui- Hese UI components@limeplay- Playful components@pixelact-ui- Pixel-perfect components@zippystarter- Starter templates@shadix-ui- Shadix components@intentui- Intent-based components@coss- COSS components
Your .mcp.json includes:
{
"mcpServers": {
"vercel": {...},
"sentry": {...},
"figma": {...},
"linear": {...},
"notion": {...},
"stripe": {...},
"postgres-dev": {...},
"airtable": {...},
"clickup": {...},
"shadcn": {
"command": "npx",
"args": ["shadcn@latest", "mcp"]
}
}
}The shadcn MCP server runs locally via npx shadcn@latest mcp and connects to Claude Code, enabling natural language component installation.
Instead of:
npx shadcn add button
npx shadcn add @magicui/hero-videoYou can now say:
"Add the button, card, and dialog components"
"Install the hero-video component from magicui"
"Add all the form components I need for user registration"
Ask Claude:
"Show me all animation components across all registries"
"Find payment processing components"
"What AI components are available?"
"List all components from @magicui"
Complex requests:
"I need a landing page hero section with video background"
→ Claude suggests: @magicui/hero-video, @blocks/hero-section
"Build a billing dashboard"
→ Claude suggests: @billingsdk components + @shadcn/chart + @shadcn/table
"Create an AI chatbot interface"
→ Claude suggests: @assistant-ui/chat + @elements/ai-chat + @simple-ai
Example workflow:
"Create a SaaS dashboard with:
- Auth system (use @clerk)
- Billing page (use @billingsdk)
- Animated hero (use @magicui)
- Data tables (use @shadcn/table)
- Charts (use @shadcn/chart)"
Claude will:
- Install components from 3 different registries
- Set up proper imports
- Configure integrations
- Add necessary dependencies
Speed development by 10x:
"Build a complete authentication flow with email, OAuth, and 2FA"
→ Uses @clerk registry + shadcn components
"Create an admin dashboard with user management, analytics, and settings"
→ Combines @elements, @shadcn charts, @blocks sections
"Set up a payment flow with Stripe, PayPal support"
→ Uses @paykit-sdk for unified payments
Try different styles instantly:
"Show me the button component in neobrutalism style"
→ @retroui/button
"What does a card look like in cult-ui?"
→ @cult-ui/card
"Compare hero sections from magicui, blocks, and aceternity"
→ Shows all three side-by-side
Claude: "Search all registries for 'pricing table'"
→ Finds: @blocks/pricing, @shadcnblocks/pricing, @elements/pricing-table
Claude: "Add button with all its dependencies"
→ Installs: button + badge + icon + utils (automatically)
Claude: "Show me what changed in @magicui/hero-video v2.0"
→ Displays changelog and breaking changes
Claude: "What props does @assistant-ui/chat accept?"
→ Shows full API documentation
"Build an e-commerce product page with:
- Product image gallery (@magicui/gallery)
- Add to cart button (@shadcn/button)
- Product reviews (@blocks/reviews)
- Related products carousel (@magicui/carousel)
- Stripe checkout (@paykit-sdk/checkout)"
"Create a SaaS dashboard with:
- Auth system (@clerk/auth)
- Billing page (@billingsdk/subscription-manager)
- Usage metrics (@shadcn/chart)
- Team management (@elements/team-members)
- Settings page (@blocks/settings)"
"Build an AI chat interface with:
- Chat UI (@assistant-ui/chat)
- Voice input (@elevenlabs-ui/voice-input)
- Prompt suggestions (@prompt-kit/suggestions)
- Message history (@shadcn/scroll-area)
- File uploads (@better-upload/dropzone)"
"Create a portfolio landing page with:
- Animated hero (@magicui/hero-video)
- Project showcase (@blocks/portfolio-grid)
- Contact form (@formcn/contact-form)
- Smooth scroll (@smoothui/scroll-container)
- Animated transitions (@motion-primitives)"
- Manual component search: 5-10 min per component
- Reading documentation: 10-15 min per component
- Copy-paste-adapt: 15-20 min per component
- Finding right registry: 10-30 min
- Total: 40-75 min per component
- Natural language request: 30 seconds
- Automatic installation: 10 seconds
- Auto-configuration: 20 seconds
- Total: 1 minute per component
"Mix @magicui animations with @retroui styling"
→ Best of both worlds
"Install all authentication components from @clerk"
→ One command, multiple components
"Add a form with validation"
→ Automatically selects @formcn with zod validation
When working on: billing page
Claude suggests: @billingsdk, @stripe, @paykit-sdk components
When working on: chat UI
Claude suggests: @assistant-ui, @elevenlabs-ui components
"Add @magicui/hero-video@1.5.2"
→ Specific version control
You: "Set up complete authentication with @clerk"
Claude:
✓ Installs @clerk/nextjs
✓ Adds environment variables
✓ Creates auth middleware
✓ Adds sign-in/sign-up pages
✓ Configures providers (Google, GitHub)You: "Add Stripe payments with @paykit-sdk"
Claude:
✓ Installs payment components
✓ Sets up checkout flow
✓ Adds subscription management
✓ Creates billing portal
✓ Handles webhooksYou: "Add a rich text editor with @plate"
Claude:
✓ Installs Plate.js
✓ Configures plugins
✓ Adds toolbar
✓ Sets up slash commands
✓ Enables AI featuresYou: "Add hero animations from @magicui"
Claude:
✓ Installs magicui components
✓ Adds framer-motion
✓ Sets up hero-video
✓ Adds text animations
✓ Configures scroll effects# Restart Claude Code
# Or manually test:
npx shadcn@latest mcp# Check registry URL in components.json
# Verify network connection
# Try: npx shadcn add @<registry>/<component># Use namespace imports:
import { Button as ShadcnButton } from "@/components/ui/button"
import { Button as MagicButton } from "@/components/magicui/button"# Some registries need auth:
# Add to .env.local:
REGISTRY_AUTH_TOKEN=your_token_hereSome registries may require authentication:
# .env.local
# Pro Registries (optional)
MAGICUI_PRO_LICENSE=your_license_key
CREATIVE_TIM_TOKEN=your_token
# Private Registries (if needed)
REGISTRY_AUTH_TOKEN=your_token
NPM_TOKEN=your_npm_token// Group imports by registry
import { Button, Card } from "@/components/ui" // shadcn
import { HeroVideo } from "@/components/magicui" // @magicui
import { Chat } from "@/components/assistant-ui" // @assistant-ui// Prefix components to avoid conflicts
import { Button as RetroButton } from "@/components/retroui/button"
import { Button as CultButton } from "@/components/cult-ui/button"# Don't install entire registries, be selective:
"Add only the components I need for this feature"# Before committing, explore options:
"Show me 3 different hero section options from different registries"# Check bundle size:
"Which registry has the smallest bundle size for carousel?"Your setup includes multiple MCP servers that work together:
You: "Deploy to Vercel and set up error tracking"
Claude:
1. Uses @vercel MCP to deploy
2. Uses @sentry MCP to configure monitoring
3. Uses @shadcn MCP to add error UI componentsYou: "Create a user table and admin UI"
Claude:
1. Uses @postgres-dev MCP to create schema
2. Uses @shadcn MCP to add data-table components
3. Uses @clerk MCP to add authYou: "Import designs from Figma and implement"
Claude:
1. Uses @figma MCP to fetch designs
2. Uses @shadcn MCP to find matching components
3. Implements with proper styling// Lazy load heavy components
const HeroVideo = lazy(() => import("@/components/magicui/hero-video"))
const RichEditor = lazy(() => import("@/components/plate/editor"))# Claude can help:
"Analyze bundle size and suggest optimizations"
→ Suggests tree-shaking, code-splitting, lighter alternatives# Choose based on size:
"Which animation library has the smallest footprint?"
→ Compares @magicui vs @animate-ui vs @motion-primitives# Claude monitors registry updates:
"Check for updates to @magicui components"
"What's new in @assistant-ui v2.0?"# When registries change:
"Migrate from @old-registry to @new-registry"
→ Handles breaking changes automatically# Check registry status:
"Is @aceternity still maintained?"
"What's the community rating for @cult-ui?"With 82 registries and MCP integration, you have:
- 10,000+ components at your fingertips
- 40-75x faster development
- Natural language interface
- Cross-registry search
- Automatic dependency management
- Intelligent suggestions
- Restart Claude Code to activate MCP server
- Try a command: "Show me all available components from @magicui"
- Build something: "Create a landing page with animated hero"
- Explore: "What authentication components are available?"
"Show me all animation libraries"
"Add a complete auth system"
"Build a pricing page with Stripe"
"Create an AI chat interface"
"Set up a rich text editor"
"Add a hero section with video background"
"Install form components with validation"
"Create a dashboard with charts"
- Official Docs: https://ui.shadcn.com/docs/mcp
- Registry Directory: https://ui.shadcn.com/docs/directory
- Component Search: Ask Claude to search across all 82 registries
- GitHub Issues: https://github.com/shadcn-ui/ui/issues
You're now equipped to build faster than ever before. Happy coding! 🚀