Shadcn Registry Manager

by reuvenaor

615 downloads
Not rated
GitHub

About

MCP server for Shadcn UI, enabling automated, remote, or containerized project management via local or remote registries.

Details

Author
reuvenaor
Downloads
615
Categories
Other

- Exposes shadcn CLI operations as MCP tools.
- Supports project initialization and component addition.
- Can fetch, list, and add registry items including block components.
- Works with both official and custom/self-hosted registries.
- Deployable via Docker or npx.
- Integrates with AI agents and Claude.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Shadcn Registry Manager
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Add the server to your mcp.json configuration. You can run it via Docker (mounting your project directory and setting REGISTRY_URL, STYLE environment variables) or via npx (setting REGISTRY_URL, WORKSPACE_DIR, and STYLE). The server exposes a set of MCP tools such as get_init_instructions, execute_init, get_items, add_item, execute_add, and get_blocks that you or an AI agent can call to manage shadcn components.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "shadcn registry manager": {
            "shadcn-registry-manager": {
                "command": "docker",
                "args": [
                    "run",
                    "--rm",
                    "-i",
                    "--mount",
                    "type=bind,src=<your-project-path>,dst=/workspace",
                    "-e",
                    "REGISTRY_URL=https://ui.shadcn.com/r",
                    "-e",
                    "STYLE=new-york",
                    "reuvenaor/shadcn-registry-manager"
                ]
            }
        }
    }
}

McpServers

{
    "shadcn-registry-manager": {
        "command": "docker",
        "args": [
            "run",
            "--rm",
            "-i",
            "--mount",
            "type=bind,src=<your-project-path>,dst=/workspace",
            "-e",
            "REGISTRY_URL=https://ui.shadcn.com/r",
            "-e",
            "STYLE=new-york",
            "reuvenaor/shadcn-registry-manager"
        ]
    }
}

shadcn registry manager - MCP Server

This project provides an MCP (Model Context Protocol) server for the shadcn/ui component registry and CLI. It enables remote, programmatic, or containerized execution of shadcn CLI commands (such as init, add, etc.) that you would normally run locally, making it easy to automate, integrate, or run in cloud/dev environments. The MCP server can connect to both local and remote shadcn registries, providing a secure, extensible, and technical interface for automating project management tasks via AI or CLI agents.

What It Does

This MCP server exposes shadcn CLI operations as MCP tools, so you (or an AI agent) can:

- Initialize a project
- Add components from the shadcn registry including block components
- List and fetch registry items
- Run all shadcn CLI workflows remotely
- Supports both the official shadcn registry - https://ui.shadcn.com/r and custom/self-hosted registries follow this guide: https://ui.shadcn.com/docs/blocks

Usage

Docker

Run the MCP server in a container, mounting your project directory:

Add the following to your mcp.json file:

   "shadcn-registry-manager": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--mount",
        "type=bind,src=<your-project-path>,dst=/workspace",
        "-e", 
        "REGISTRY_URL=https://ui.shadcn.com/r",
        "-e", 
        "STYLE=new-york",
        "reuvenaor/shadcn-registry-manager"
      ],
    },

Docker mounting explanation:

- \<your-project-path\> - Is the path to your project directory.

Example: /Library/Projects/shadcn-registry-manager/www

- /workspace - is the path to the workspace directory inside the container.
(Don't change it, if you do, you must pass the same path as cwd param on every tool call)

Docker ENV Variables:

- REGISTRY_URL - option 1: https://ui.shadcn.com/r - The URL of the shadcn registry - option 2: http://localhost:3000>/r - The URL of your own registry server (follow this guide: https://ui.shadcn.com/docs/blocks) - STYLE - is the style of the shadcn registry - new-york

npx

You can also run the MCP server using npx, which is convenient for local development or CI/CD pipelines.

Add the following to your mcp.json file:

  "shadcn-registry-manager": {
    "command": "npx",
    "args": [
      "@reuvenorg/shadcn-registry-manager"
    ],
    "env": {
      "REGISTRY_URL": "https://ui.shadcn.com/r",
      "WORKSPACE_DIR": "/Library/Projects/mcp-docker/www",
      "STYLE": "new-york"
    }
  }

Claude

You can also use the MCP server with Claude. Here are the configuration options:

Claude CLI Command:

claude mcp add --scope project shadcn-registry-manager npx @reuvenorg/shadcn-registry-manager -e REGISTRY_URL=https://ui.shadcn.com/r -e WORKSPACE_DIR=/Library/Projects/resume -e STYLE=new-york

Claude .mcp.json Configuration:

{
  "shadcn-registry-manager": {
    "type": "stdio",
    "command": "npx",
    "args": [
      "@reuvenorg/shadcn-registry-manager"
    ],
    "env": {
      "REGISTRY_URL": "https://ui.shadcn.com/r",
      "WORKSPACE_DIR": "/Library/Projects/resume",
      "STYLE": "new-york"
    }
  }
}

npx ENV Variables:

- WORKSPACE_DIR - The path to your project directory (mounted as the workspace)
- REGISTRY_URL
- option 1: https://ui.shadcn.com/r - The URL of the shadcn registry
- option 2: http://localhost:3000/r - The URL of your own registry server (follow this guide: https://ui.shadcn.com/docs/blocks)
- STYLE - is the style of the shadcn registry - new-york

Example MCP Tools

- get_init_instructions: Get project initialization instructions - execute_init: Run full project initialization - get_items: List available registry items - get_item: Fetch a specific registry item - add_item: Add a registry item to your project - execute_add: Add multiple components to your project - get_blocks: Get current blocks from the registry

Example Usage

use the tool get_blocks to get the blocks from the registry
use the tool add_item - dashboard-01 to your project

Source

- shadcn/ui - Model Context Protocol

made with ❤️ by Reuven Naor

---

MIT License. See LICENSE for details.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.