Skip to main content
Glama
totodev999

shadcn-ui MCP Server

by totodev999
README.md
# shadcn-ui MCP Server

MCP server for shadcn/ui component references

This is a TypeScript-based MCP server that provides reference information for shadcn/ui components. It implements a Model Context Protocol (MCP) server that helps AI assistants access shadcn/ui component documentation and examples.

## Features

### Tools

- `list_shadcn_components` - Get a list of all available shadcn/ui components
- `get_component_details` - Get detailed information about a specific component
- `get_component_examples` - Get usage examples for a specific component
- `search_components` - Search for components by keyword

### Functionality

This server scrapes and caches information from:
- The official shadcn/ui documentation site (https://ui.shadcn.com)
- The shadcn/ui GitHub repository

It provides structured data including:
- Component descriptions
- Installation instructions
- Usage examples
- Props and variants
- Code samples

## Development

Install dependencies:
```bash
npm install
```

Build the server:
```bash
npm run build
```

For development with auto-rebuild:
```bash
npm run watch
```

## Installation

### Claude Desktop Configuration

To use with Claude Desktop, add the server config:

On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`

#### Option 1: Using local build

```json
{
  "mcpServers": {
    "shadcn-ui-server": {
      "command": "/path/to/shadcn-ui-server/build/index.js"
    }
  }
}
```

#### Option 2: Using npx command

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

### Windsurf Configuration

Add this to your `./codeium/windsurf/model_config.json`:

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

### Cursor Configuration

Add this to your `.cursor/mcp.json`:

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

### Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector), which is available as a package script:

```bash
npm run inspector
```

The Inspector will provide a URL to access debugging tools in your browser.

TDQS

A3.6/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: listing all components, searching by keyword, getting component details, and getting usage examples. The descriptions make it unambiguous which tool to use for each specific need.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with clear, descriptive names (get_component_details, get_component_examples, list_shadcn_components, search_components). The naming convention is uniform and predictable throughout the set.

Tool Count5/5

Four tools is perfectly appropriate for a shadcn/ui component documentation server. This provides complete coverage for the core workflows: discovering components, searching, getting details, and seeing examples without being overwhelming or insufficient.

Completeness5/5

The tool set provides complete coverage for interacting with shadcn/ui components: listing all available components, searching for specific ones, getting detailed information, and accessing usage examples. There are no obvious gaps in this documentation-focused domain.

Maintenance

ActivityInactive
ResponsivenessNo issues