shadcn-ui-mcp-server
Provides comprehensive access to shadcn/ui v4 components, blocks, demos, and metadata, with support for React, Svelte, Vue, and React Native implementations, enabling AI-powered UI development and code generation.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@shadcn-ui-mcp-server Get the source code for the shadcn/ui button component in React"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Shadcn UI v4 MCP Server
π The fastest way to integrate shadcn/ui components into your AI workflow
A Model Context Protocol (MCP) server that provides AI assistants with comprehensive access to shadcn/ui v4 components, blocks, demos, and metadata. Seamlessly retrieve React, Svelte, Vue, and React Native implementations for your AI-powered development workflow.
β¨ Key Features
π― Multi-Framework Support - React, Svelte, Vue, and React Native implementations
π¦ Component Source Code - Latest shadcn/ui v4 TypeScript source
π¨ Component Demos - Example implementations and usage patterns
ποΈ Blocks Support - Complete block implementations (dashboards, calendars, forms)
π Metadata Access - Dependencies, descriptions, and configuration details
π Directory Browsing - Explore repository structures
β‘ Smart Caching - Efficient GitHub API integration with rate limit handling
π SSE Transport - Server-Sent Events support for multi-client deployments
π³ Docker Ready - Production-ready containerization with Docker Compose
Related MCP server: shadcn-ui MCP Server
π Quick Start
# Basic usage (60 requests/hour)
npx @jpisnice/shadcn-ui-mcp-server
# With GitHub token (5000 requests/hour) - Recommended
npx @jpisnice/shadcn-ui-mcp-server --github-api-key ghp_your_token_here
# Switch frameworks
npx @jpisnice/shadcn-ui-mcp-server --framework svelte
npx @jpisnice/shadcn-ui-mcp-server --framework vue
npx @jpisnice/shadcn-ui-mcp-server --framework react-native
# Use Base UI instead of Radix (React only)
npx @jpisnice/shadcn-ui-mcp-server --ui-library baseπ― Get your GitHub token in 2 minutes: docs/getting-started/github-token.md
π¦ One-Click Installation (Claude Desktop)
Download and double-click the .mcpb file for instant installation:
Download
shadcn-ui-mcp-server.mcpbfrom ReleasesDouble-click the file - Claude Desktop opens automatically
Enter your GitHub token (optional, for higher rate limits)
Click Install - tools are available immediately
Manual install: Claude Desktop β Settings β MCP β Add Server β Browse β Select .mcpb file
References: Anthropic Desktop Extensions | Building MCPB
π SSE Transport & Docker Deployment
Run the server with Server-Sent Events (SSE) transport for multi-client support and production deployments:
Quick Start with SSE
# SSE mode (supports multiple concurrent connections)
node build/index.js --mode sse --port 7423
# Docker Compose (production ready)
docker-compose up -d
# Connect with Claude Code
claude mcp add --scope user --transport sse shadcn-mcp-server http://localhost:7423/sseTransport Modes
stdio(default) - Standard input/output for CLI usagesse- Server-Sent Events for HTTP-based connectionsdual- Both stdio and SSE simultaneously
Docker Examples
# Basic container
docker run -p 7423:7423 shadcn-ui-mcp-server
# With GitHub API token
docker run -p 7423:7423 -e GITHUB_PERSONAL_ACCESS_TOKEN=ghp_your_token shadcn-ui-mcp-server
# Docker Compose (recommended)
docker-compose up -d
curl http://localhost:7423/healthEnvironment Variables
MCP_TRANSPORT_MODE- Transport mode (stdio|sse|dual)MCP_PORT- SSE server port (default: 7423 - SHADCN on keypad!)MCP_HOST- Host binding (default: 0.0.0.0)MCP_CORS_ORIGINS- CORS origins (comma-separated)GITHUB_PERSONAL_ACCESS_TOKEN- GitHub API tokenUI_LIBRARY- UI primitive library:radix(default) orbase(React only)
π Documentation
Section | Description |
Installation, setup, and first steps | |
Framework selection, tokens, and options | |
Editor and tool integrations | |
Examples, tutorials, and use cases | |
Framework-specific documentation | |
Common issues and solutions | |
Tool reference and technical details |
π¨ Framework Support
This MCP server supports four popular shadcn implementations:
Framework | Repository | Maintainer | Description |
React (default) | React components from shadcn/ui v4 | ||
Svelte | Svelte components from shadcn-svelte | ||
Vue | Vue components from shadcn-vue | ||
React Native | React Native components from react-native-reusables |
UI Library (React only)
shadcn/ui v4 supports two primitive libraries for React: Radix UI (default) and Base UI.
# Radix UI (default)
npx @jpisnice/shadcn-ui-mcp-server --framework react --ui-library radix
# Base UI
npx @jpisnice/shadcn-ui-mcp-server --framework react --ui-library base
# Or via environment variable
UI_LIBRARY=base npx @jpisnice/shadcn-ui-mcp-serverClaude Desktop config example:
{
"args": ["--framework", "react", "--ui-library", "base"]
}π οΈ Essential Setup
1. Get GitHub Token (Recommended)
# Visit: https://github.com/settings/tokens
# Generate token with no scopes needed
export GITHUB_PERSONAL_ACCESS_TOKEN=ghp_your_token_here2. Run Server
# React (default)
npx @jpisnice/shadcn-ui-mcp-server
# Svelte
npx @jpisnice/shadcn-ui-mcp-server --framework svelte
# Vue
npx @jpisnice/shadcn-ui-mcp-server --framework vue
# React Native
npx @jpisnice/shadcn-ui-mcp-server --framework react-native3. Integrate with Your Editor
Claude Code: See Claude Code Integration below
VS Code: docs/integration/vscode.md
Cursor: docs/integration/cursor.md
Claude Desktop: docs/integration/claude-desktop.md
Continue.dev: docs/integration/continue.md
π» Claude Code Integration
Quick Add (CLI)
# Add the shadcn-ui MCP server
claude mcp add shadcn -- bunx -y @jpisnice/shadcn-ui-mcp-server --github-api-key YOUR_TOKENSSE Transport
For production deployments with SSE transport:
# Start server in SSE mode
node build/index.js --mode sse --port 7423
# Connect with Claude Code
claude mcp add --scope user --transport sse shadcn-mcp-server http://localhost:7423/sseFramework-Specific Commands
See Claude Code Integration Guide for framework-specific commands (React, Svelte, Vue, React Native).
Reference: Claude Code MCP Documentation
π― Use Cases
AI-Powered Development - Let AI assistants build UIs with shadcn/ui
Multi-Client Deployments - SSE transport supports multiple concurrent connections
Production Environments - Docker Compose ready with health checks and monitoring
Component Discovery - Explore available components and their usage
Multi-Framework Learning - Compare React, Svelte, Vue, and React Native implementations
Rapid Prototyping - Get complete block implementations for dashboards, forms, etc.
Code Generation - Generate component code with proper dependencies
π¦ Installation
# Global installation (optional)
npm install -g @jpisnice/shadcn-ui-mcp-server
# Or use npx (recommended)
npx @jpisnice/shadcn-ui-mcp-serverπ¨ Building from Source
Prerequisites
Node.js >= 18.0.0
npm or pnpm
Build Steps
# Clone the repository
git clone https://github.com/Jpisnice/shadcn-ui-mcp-server.git
cd shadcn-ui-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Run the server
node build/index.js --github-api-key YOUR_TOKENRun Locally
# After building, run with options
node build/index.js --github-api-key YOUR_TOKEN
node build/index.js --framework svelteBuilding MCPB Package
The project includes a manifest.json following the MCPB specification. The .mcpb file is a ZIP archive containing the server, dependencies, and configuration.
See CONTRIBUTING.md for detailed packaging instructions.
Reference: Building Desktop Extensions with MCPB
π Quick Links
π Full Documentation
π¨ Framework Comparison
π§ API Reference
π Troubleshooting
π¬ Issues & Discussions
π License
MIT License - see LICENSE for details.
π Acknowledgments
shadcn - For the amazing React UI component library
huntabyte - For the excellent Svelte implementation
unovue - For the comprehensive Vue implementation
Founded Labs - For the React Native implementation
Anthropic - For the Model Context Protocol specification
Made with β€οΈ by Janardhan Polle
Star β this repo if you find it helpful!
Available Tools
10 toolsapply_themeCDestructive
Apply a TweakCN theme preset to the project
Inputs: query, dryRun, presetId, tailwindVersion.
get_blockARead-only
Get source code for a specific shadcn/ui v4 block (e.g., calendar-01, dashboard-01)
Inputs: blockName (required), includeComponents.
get_componentARead-only
Get the source code for a specific shadcn/ui v4 component
Inputs: componentName (required).
get_component_demoARead-only
Get demo code illustrating how a shadcn/ui v4 component should be used
Inputs: componentName (required).
get_component_metadataARead-only
Get metadata for a specific shadcn/ui v4 component
Inputs: componentName (required).
get_directory_structureBRead-only
Get the directory structure of the shadcn-ui v4 repository
Inputs: path, repo, owner, branch.
get_themeBRead-only
Get details of a specific tweakcn theme
Inputs: themeName (required).
list_blocksBRead-only
Get all available shadcn/ui v4 blocks with categorization
Inputs: category.
list_componentsBRead-only
Get all available shadcn/ui v4 components
Inputs: no named parameters.
list_themesARead-only
List available tweakcn themes
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 10 tools
Each tool targets a distinct resource (component, block, theme, directory) and action (list, get, apply). The three component-specific getters are clearly separated by what they return: source, demo, or metadata, so an agent is unlikely to confuse them.
All tools follow a consistent verb_noun pattern with snake_case: list_* for enumeration, get_* for retrieval, and apply_theme for the one mutation. Singular get_* versus plural list_* is a standard and predictable convention.
Ten tools is well-scoped for the server's purpose. The three resource domains (components, blocks, themes) each have a small, focused set of tools, and no tool feels redundant or unnecessary.
The tool surface covers the core workflows: discovering components and blocks, retrieving their source/demo/metadata, and exploring/applying themes. Minor gaps exist (e.g., no search/filtering across components, no block demos or metadata), but an agent can accomplish most expected tasks without dead ends.
Maintenance
Related MCP Connectors
Search, read and install ReUI shadcn components, examples, blocks and icons from your coding agent.
React + Tailwind UI components and recipes your AI coding tool can search and install.
React + Tailwind UI components and recipes your AI coding tool can search and install.
Find, read and install shadcn components with Salesforce Lightning's look, for Radix and Base UI.
Related MCP Servers
- AlicenseAqualityDmaintenanceHelps AI assistants access shadcn/ui component documentation and examples through a TypeScript-based MCP server that provides reference information for component details, usage examples, and search capabilities.4526 npm60MIT
- AlicenseAqualityDmaintenanceProvides reference information for shadcn/ui components through a Model Context Protocol server that helps AI assistants access component documentation and examples.4526 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to discover, install, and generate code examples for shadcn/ui components, providing installation commands and usage examples for 37+ React UI components.MIT
- FlicenseAqualityDmaintenanceProvides AI assistants with direct access to shadcn/ui components and blocks, enabling real-time fetching of component source code, documentation, and implementation examples.422 npm4-