Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Component Builder Server

БесплатноНе проверен

Generates custom React components following Shadcn UI standards with TypeScript, Tailwind CSS, and accessibility support.

GitHubEmbed

Описание

Generates custom React components following Shadcn UI standards with TypeScript, Tailwind CSS, and accessibility support.

README

MCP server for generating custom components based on Shadcn UI standards and criteria.

Features

  • 🎨 Generate custom React components following Shadcn/UI patterns
  • 📝 TypeScript support with proper type definitions
  • 🎯 Tailwind CSS integration with class variance authority
  • ✅ Component validation and standards checking
  • 📚 Template-based generation system
  • ♿ Accessibility-first approach
  • 🔍 Comprehensive validation with suggestions

Installation

npm install
npm run build

Usage

As MCP Server

The server runs via stdio and can be integrated with MCP-compatible clients:

npm start

Testing

Run the built-in tests to verify functionality:

npm test

Available Tools

🔧 generate_component

Create a new component based on specifications with:

  • Component type selection (button, input, card, modal, etc.)
  • Custom props definition
  • Styling and accessibility configuration
  • Size and variant options

✅ validate_component

Check if a component follows Shadcn standards:

  • TypeScript validation
  • Accessibility compliance
  • Performance suggestions
  • Code quality checks

📋 list_component_types

Get available component types and templates with:

  • Detailed descriptions
  • Available variants
  • Usage examples

📖 get_component_template

Retrieve specific component template information:

  • Template structure
  • Configuration options
  • Implementation examples

🎯 generate_component_examples

Generate usage examples for component types:

  • Basic usage patterns
  • Advanced configurations
  • Real-world scenarios

Component Types

Type Description Variants
button Interactive button with multiple styles default, destructive, outline, secondary, ghost, link
input Form input with proper styling default
card Flexible card with header/content/footer default
modal Modal dialog with Radix UI primitives default
dropdown Dropdown menu with keyboard navigation default
form Form components with validation default
navigation Navigation menus and breadcrumbs default
layout Layout components for page structure default
data-display Tables, lists, and data components default
feedback Alerts, notifications, and feedback default
custom Flexible custom component type configurable

Component Standards

This server follows Shadcn/UI standards including:

✨ Code Quality

  • Proper TypeScript typing with generics
  • React.forwardRef for ref handling
  • DisplayName for debugging
  • Consistent naming conventions (PascalCase)

🎨 Styling

  • Tailwind CSS classes with semantic tokens
  • Class Variance Authority for variant handling
  • cn() utility for className composition
  • Consistent color schemes and sizing

♿ Accessibility

  • ARIA attributes and roles
  • Keyboard navigation support
  • Focus management and visible focus indicators
  • Semantic HTML elements

⚡ Performance

  • Optimized re-rendering patterns
  • Proper memoization usage
  • Component size considerations
  • Efficient prop handling

Example Usage

Generate a Custom Button

{
  "name": "SubmitButton",
  "type": "button",
  "description": "Form submission button with loading state",
  "variant": "default",
  "size": "lg",
  "props": [
    {
      "name": "loading",
      "type": "boolean",
      "required": false,
      "description": "Show loading spinner"
    }
  ],
  "children": true,
  "accessibility": {
    "ariaLabel": "Submit form"
  }
}

Validate Component Code

{
  "componentCode": "your-component-code-here",
  "strict": true
}

Configuration

Example MCP client configuration:

{
  "mcpServers": {
    "component-builder": {
      "command": "node",
      "args": ["/path/to/component-builder-mcp-server/dist/index.js"],
      "description": "Component Builder MCP Server"
    }
  }
}

Development

Project Structure

src/
├── index.ts              # Main MCP server
├── types/
│   └── component.ts      # TypeScript type definitions
├── templates/
│   ├── *.hbs            # Handlebars templates
│   └── index.ts         # Template registry
├── utils/
│   ├── generator.ts     # Component generation logic
│   ├── validator.ts     # Component validation
│   └── helpers.ts       # Utility functions
examples/
├── basic-usage.md       # Basic usage examples
├── advanced-usage.md    # Advanced examples
└── api-reference.md     # Complete API documentation
test/
└── basic-test.js        # Integration tests

Building

npm run build    # Build TypeScript and copy templates
npm run dev      # Watch mode for development

Testing

npm test         # Run integration tests

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Add tests for new functionality
  4. Update documentation
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

from github.com/Anurag7376/component-builder-mcp-server

Установка Component Builder Server

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/Anurag7376/component-builder-mcp-server

FAQ

Component Builder Server MCP бесплатный?

Да, Component Builder Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Component Builder Server?

Нет, Component Builder Server работает без API-ключей и переменных окружения.

Component Builder Server — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Component Builder Server в Claude Desktop, Claude Code или Cursor?

Открой Component Builder Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Component Builder Server with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории design