Generating one tool per category rather than one per component is the design choice worth copying: it keeps the tool count manageable and gives the model a sensible way to narrow down. Install it as-is and you get someone else's demo registry — the value only arrives after you point it at yours.
A starter template rather than a working server. It is aimed at UI libraries that follow the shadcn registry format: point it at your registry URL, list your components by category, and it creates one tool per category so an assistant can fetch component code, usage and installation instructions.
- A tool returning every component in your registry — `getUIComponents`
- One tool generated per category you define, so `Buttons` becomes `getButtons` and `Forms` becomes `getForms` — add a category and the tool appears
- Per-component output covering implementation details, usage examples, installation instructions and related components
- Zod schemas for validation, a hot-reload dev server, and an inspect script for testing the tools interactively
- A worked real-world instance to copy from: the stackzero-labs registry server built on this template
Node.js 18 or higher and pnpm. Your registry must follow the shadcn `registry.json` and `/r/{component-name}.json` shape. Three files to edit before it does anything for you: the config with your project and registry URLs, the category map, and the server name. The template ships pointing at a demonstration URL that you must replace. No account or key. The package is `mcp-starter` 0.1.0.
One command — npx -y mcp-starter
