shadcn/ui MCP server
Last verified: 2026-09
Add shadcn components from the registry.
Community Developer tools No API key Claude Desktop, Cursor, Windsurf, Claude Code, VS Code
What it does
Reads the shadcn/ui registry (and optional GitHub token for a higher rate limit) so the model can add components without guessing props. No cloud secret required for the public registry.
It sits in Developer tools: Split this category in two.
Good for
- Ask for a component's install command and props instead of guessing.
- List registry blocks for a page you are assembling.
- Switch framework flags if you are not on React/Radix.
- Add a GitHub token only to raise the registry rate limit.
Tools
- list / get component and block data — Registry metadata and example usage. Exact names follow the current package.
Config (Claude Desktop / Cursor / Windsurf)
Paste the JSON below. Same mcpServers shape. Replace placeholder paths and secrets.
Windows paths look like C:\\Users\\you\\project, not /path/to.
Host-side steps →
Claude Desktop
| OS | Config file |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json
(usually C:\Users\<you>\AppData\Roaming\Claude\) |
| Linux | ~/.config/Claude/claude_desktop_config.json |
Cursor
| Scope | macOS / Linux | Windows |
|---|---|---|
| This project | .cursor/mcp.json in the repo root | |
| This user | ~/.cursor/mcp.json |
%USERPROFILE%\.cursor\mcp.json |
Windsurf
| OS | Config file |
|---|---|
| macOS / Linux | ~/.codeium/windsurf/mcp_config.json |
| Windows | %USERPROFILE%\.codeium\windsurf\mcp_config.json |
{
"mcpServers": {
"shadcn": {
"command": "npx",
"args": [
"-y",
"@jpisnice/shadcn-ui-mcp-server"
]
}
}
}
Windsurf remote MCP: use serverUrl instead of url if the block below is HTTP.
One-liner: npx -y @jpisnice/shadcn-ui-mcp-server
Secrets it wants: none
How to get started
- npx -y @jpisnice/shadcn-ui-mcp-server. Optional GITHUB_PERSONAL_ACCESS_TOKEN for 5k GitHub req/hour.
- Tell it which framework if you are not on React/Radix.
- Ask it for one component's install command and props, then run that yourself.
Access risk
Low. A GitHub token here is only for rate limit, but still do not give it repo write.
When to skip it
Skip it if Context7 + the official CLI already get you there.
Vs alternatives
| Server | Official? | Needs a secret? | Best for |
|---|---|---|---|
| shadcn/ui | No | No | Add shadcn components from the registry. |
| Context7 | No | Yes | Up-to-date library docs pulled into the prompt. |
| Magic UI | No | Yes | Generate UI components from 21st.dev. |
| Fetch | Yes | Yes | Fetch a URL and turn the page into readable text. |
More in Developer tools
FAQ
Do I need a secret?
No. Optional GITHUB_PERSONAL_ACCESS_TOKEN for 5k GitHub req/hour — read-only, no repo write.
Does it run the shadcn CLI for me?
It reads the registry. You still run the CLI or paste the files.
shadcn or Context7?
Context7 for any library's docs. shadcn for this registry specifically.
Base UI vs Radix?
The package documents a flag to use Base UI. Set it if that is your stack.