Skip to main content
Glama
README.md
# shadcn MCP Server

A Model Context Protocol server for shadcn/ui components. Helps AI assistants discover, install, and generate code for shadcn/ui components.

## Installation

### Option 1: Use with Claude Desktop (Recommended)

Add to your Claude Desktop `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "shadcn": {
      "command": "npx",
      "args": ["shadcn-mcp-server"]
    }
  }
}
```

### Option 2: Clone and Run Locally

```bash
git clone https://github.com/krutikkkkkkkkk/shadcn-mcp-server.git
cd shadcn-mcp-server
npm install
npm run build
npm start
```

### Option 3: Use with Any MCP Client

Install globally:
```bash
npm install -g shadcn-mcp-server
```

Then configure your MCP client to connect to `shadcn-mcp-server`.

## Features

- List and search shadcn/ui components
- Get component details and dependencies  
- Generate installation commands
- Create usage examples with proper imports

## Available Tools

- `list_shadcn_components` - Browse available components
- `get_component_info` - Get component details
- `generate_component_usage` - Generate code examples
- `get_installation_steps` - Get installation instructions

## Usage

Once installed, you can ask your AI assistant:

- **"What shadcn components are available for forms?"**
- **"Show me how to use the button component"** 
- **"How do I install the card and dialog components?"**
- **"Generate a complete form example with shadcn components"**

The server will provide accurate information, installation commands, and code examples.

## Example Conversation

```
You: "I need a modal dialog for my React app"

AI: Let me help you with the shadcn dialog component.

[Uses get_component_info and generate_component_usage tools]

AI: Here's how to install and use the Dialog component:

Installation:
npm install shadcn@latest add dialog

Usage:
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger } from "@/components/ui/dialog"

<Dialog>
  <DialogTrigger asChild>
    <Button>Open Dialog</Button>
  </DialogTrigger>
  <DialogContent>
    <DialogHeader>
      <DialogTitle>Dialog Title</DialogTitle>
    </DialogHeader>
    <p>Your dialog content here</p>
  </DialogContent>
</Dialog>
```

## Supported Components (37 total)

**Layout & Navigation**: Accordion, Breadcrumb, Card, Carousel, Collapsible, Navigation Menu, Pagination, Separator, Sheet, Tabs

**Forms & Input**: Button, Checkbox, Form, Input, Label, Radio Group, Select, Slider, Switch, Textarea, Toggle, Toggle Group

**Feedback & Overlays**: Alert, Alert Dialog, Dialog, HoverCard, Popover, Progress, Toast, Tooltip

**Data Display**: Avatar, Badge, Calendar, Command, Skeleton, Table

**Interaction**: Context Menu, Dropdown Menu, Menubar, Scroll Area

## For Developers

```bash
npm install
npm run dev
```

## Development

- `npm run build` - Build TypeScript
- `npm run dev` - Run in development mode
- `npm start` - Run built server

## Usage

Connect with any MCP client and ask:
- "What shadcn components are available?"
- "Show me how to use the button component"
- "How do I install the card and dialog components?"