A Model Context Protocol (MCP) server that provides AI assistants with comprehensive access to shadcn-svelte components, blocks, demos, and metadata. This server enables AI tools like Claude Desktop, Continue.dev, VS Code, Cursor, and other MCP-compatible clients to retrieve and work with shadcn-svelte components more effectively.
Note: This project is forked from Jpisnice/shadcn-ui-mcp-server - a fantastic MCP server for the original shadcn/ui React components. This fork adapts the functionality specifically for shadcn-svelte components.
- Component Source Code: Get the latest shadcn-svelte component source code
- Component Demos: Access example implementations and usage patterns for Svelte components
- Blocks Support: Retrieve complete block implementations (dashboards, calendars, login forms, etc.) adapted for Svelte
- Metadata Access: Get component dependencies, descriptions, and configuration details for Svelte
- Directory Browsing: Explore the shadcn-svelte repository structure
- GitHub API Integration: Efficient caching and intelligent rate limit handling
The fastest way to get started - no installation required!
# Basic usage (rate limited to 60 requests/hour)
npx shadcn-svelte-mcp-server
# With GitHub token for better rate limits (5000 requests/hour)
npx shadcn-svelte-mcp-server --github-api-key ghp_your_token_here
# Short form
npx shadcn-svelte-mcp-server -g ghp_your_token_here
# Using environment variable
export GITHUB_PERSONAL_ACCESS_TOKEN=ghp_your_token_here
npx shadcn-svelte-mcp-serverπ― Try it now: Run npx shadcn-svelte-mcp-server --help to see all options!
shadcn-svelte-mcp-server [options]
Options:
--github-api-key, -g <token> GitHub Personal Access Token
--help, -h Show help message
--version, -v Show version information
Environment Variables:
GITHUB_PERSONAL_ACCESS_TOKEN Alternative way to provide GitHub token
Examples:
npx shadcn-svelte-mcp-server --help
npx shadcn-svelte-mcp-server --version
npx shadcn-svelte-mcp-server -g ghp_1234567890abcdef
GITHUB_PERSONAL_ACCESS_TOKEN=ghp_token npx shadcn-svelte-mcp-serverWhy do you need a token?
- Without token: Limited to 60 API requests per hour
- With token: Up to 5,000 requests per hour
- Better reliability and faster responses
-
Go to GitHub Settings:
- Visit GitHub Settings β Developer settings β Personal access tokens β Tokens (classic)
- Or: GitHub Profile β Settings β Developer settings β Personal access tokens
-
Generate New Token:
- Click "Generate new token (classic)"
- Add a note: "shadcn-svelte MCP server"
- Expiration: Choose your preference (90 days recommended)
- Scopes: β No scopes needed! (public repository access is sufficient)
-
Copy Your Token:
- Copy the generated token (starts with
ghp_) β οΈ Save it securely - you won't see it again!
- Copy the generated token (starts with
Method 1: Command Line (Quick testing)
npx shadcn-svelte-mcp-server --github-api-key ghp_your_token_hereMethod 2: Environment Variable (Recommended)
# Add to your shell profile (~/.bashrc, ~/.zshrc, etc.)
export GITHUB_PERSONAL_ACCESS_TOKEN=ghp_your_token_here
# Then simply run:
npx shadcn-svelte-mcp-server-
Install Continue Extension:
- Open VS Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "Continue" and install it
-
Configure MCP Server:
- Open Command Palette (Ctrl+Shift+P)
- Type "Continue: Configure" and select it
- Add this configuration to your settings:
{
"continue.server": {
"mcpServers": {
"shadcn-svelte": {
"command": "npx",
"args": ["shadcn-svelte-mcp-server", "--github-api-key", "ghp_your_token_here"]
}
}
}
}-
Install Claude Extension:
- Search for "Claude" in VS Code extensions
- Install the official Claude extension
-
Configure MCP Server:
- Add to your VS Code settings.json:
{
"claude.mcpServers": {
"shadcn-svelte": {
"command": "npx",
"args": ["shadcn-svelte-mcp-server"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
}
}
}-
Open Cursor Settings:
- Go to Settings (Cmd/Ctrl + ,)
- Search for "MCP" or "Model Context Protocol"
-
Add MCP Server Configuration:
{
"mcpServers": {
"shadcn-svelte": {
"command": "npx",
"args": ["shadcn-svelte-mcp-server", "--github-api-key", "ghp_your_token_here"]
}
}
}Create a .cursorrules file in your project root:
{
"mcpServers": {
"shadcn-svelte": {
"command": "npx",
"args": ["shadcn-svelte-mcp-server"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
}
}
}Add to your Claude Desktop configuration (~/.config/Claude/claude_desktop_config.json):
{
"mcpServers": {
"shadcn-svelte": {
"command": "npx",
"args": ["shadcn-svelte-mcp-server", "--github-api-key", "ghp_your_token_here"]
}
}
}Or with environment variable:
{
"mcpServers": {
"shadcn-svelte": {
"command": "npx",
"args": ["shadcn-svelte-mcp-server"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
}
}
}-
Install Continue.dev:
- Download from continue.dev
- Install the application
-
Configure MCP Server:
- Open Continue.dev
- Go to Settings β MCP Servers
- Add new server:
{
"name": "shadcn-svelte",
"command": "npx",
"args": ["shadcn-svelte-mcp-server", "--github-api-key", "ghp_your_token_here"]
}Ask your AI assistant:
"Show me the source code for the shadcn-svelte button component"
The AI can now access the complete Svelte component source code for the button component.
Ask your AI assistant:
"Create a dashboard using shadcn-svelte components. Use the dashboard-01 block as a starting point"
The AI can retrieve the complete dashboard block implementation and customize it for your Svelte needs.
Ask your AI assistant:
"Help me build a login form using shadcn-svelte components. Show me the available form components"
The AI can list all available Svelte components and help you build the form.
The MCP server provides these tools for AI assistants:
get_component- Get Svelte component source codeget_component_demo- Get Svelte component usage exampleslist_components- List all available shadcn-svelte componentsget_component_metadata- Get component dependencies and info
get_block- Get complete block implementations adapted for Sveltelist_blocks- List all available blocks with categories
get_directory_structure- Explore the shadcn-svelte repository structure
// These tools can be called by AI assistants via MCP protocol
// Get button component source
{
"tool": "get_component",
"arguments": { "componentName": "button" }
}
// List all components
{
"tool": "list_components",
"arguments": {}
}
// Get dashboard block
{
"tool": "get_block",
"arguments": { "blockName": "dashboard-01" }
}"Rate limit exceeded" errors:
# Solution: Add GitHub API token
npx shadcn-svelte-mcp-server --github-api-key ghp_your_token_here"Command not found" errors:
# Solution: Install Node.js 18+ and ensure npx is available
node --version # Should be 18+
npx --version # Should workComponent not found:
# Check available components first
npx shadcn-svelte-mcp-server
# Then call list_components tool via your MCP clientNetwork/proxy issues:
# Set proxy if needed
export HTTP_PROXY=http://your-proxy:8080
export HTTPS_PROXY=http://your-proxy:8080
npx shadcn-svelte-mcp-serverEditor not recognizing MCP server:
# Verify the server is running
npx shadcn-svelte-mcp-server --help
# Check your editor's MCP configuration
# Ensure the command and args are correctEnable verbose logging:
# Set debug environment variable
DEBUG=* npx shadcn-svelte-mcp-server --github-api-key ghp_your_tokenThis project is licensed under the MIT License - see the LICENSE file for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- π Report Issues
- π¬ Discussions
- π Documentation
- shadcn-svelte - The Svelte component library this server provides access to
- shadcn/ui - The original React component library
- Model Context Protocol - The protocol specification
- MCP TypeScript SDK - Official MCP SDK
- huntabyte and the shadcn-svelte team for the amazing Svelte UI component library
- Janardhan Polle for the original shadcn-ui MCP server that this project is based on
- shadcn for the original UI component library concept
- Anthropic for the Model Context Protocol specification
- The open source community for inspiration and contributions
Made with β€οΈ for the Svelte community
Star β this repo if you find it helpful!