Starwind UI MCP Server logo

Starwind UI MCP Server

by starwind-ui

A TypeScript implementation of a Model Context Protocol (MCP) server for Starwind UI, providing tools to help developers work with Starwind UI components. It enhances AI assistant capabilities when working with Starwind UI.

View on GitHub

Last updated: N/A

Starwind UI MCP Server

A TypeScript implementation of a Model Context Protocol (MCP) server for Starwind UI, providing tools to help developers work with Starwind UI components.

Quick Start

# Install dependencies
pnpm install

# Build the TypeScript code
pnpm build

# Start the server
pnpm start

Setup Your IDE

Instructions to set up your IDE to use a local MCP server vary by IDE. Here is an example for Windsurf:

{
	"mcpServers": {
		"starwind ui": {
			"command": "node",
			"args": ["c:\\path\\to\\folder\\starwind-ui-mcp\\dist\\server.js"],
			"env": {}
		}
	}
}

Detailed instructions:

What is MCP?

The Model Context Protocol (MCP) is a protocol for extending AI capabilities through local servers. This implementation provides Starwind UI-specific tools to enhance AI assistant capabilities when working with Starwind UI. For more information about MCP itself, please visit the official documentation.

Features

  • Tool-based Architecture - Modular design for easy addition of new tools
  • Starwind UI Documentation Tool - Access documentation links for Starwind UI components
  • Package Manager Detection - Detect and use the appropriate package manager (npm, yarn, pnpm)
  • LLM Data Fetcher - Retrieve Starwind UI information for LLMs with caching and rate limiting
  • TypeScript Implementation - Built with TypeScript for better type safety and developer experience
  • Standard I/O Transport - Uses stdio for communication with AI assistants

Available Tools

| Tool Name | Description | | --------------------- | ----------------------------------------------------------------- | | init_project | Initializes a new Starwind UI project | | install_component | Generates installation commands for Starwind UI components | | update_component | Generates update commands for Starwind UI components | | get_documentation | Returns documentation links for Starwind UI components and guides | | fetch_llm_data | Fetches LLM data from starwind.dev (rate limited, with caching) | | get_package_manager | Detects and returns the current package manager information |

Development

This project is set up to use PNPM for package manager for development purposes. If you are not using pnpm, you will need to update the package.json file with the appropriate package manager commands you need.

Project Structure

src/
  ├── config/         # Server configuration
  │   └── settings.ts # Configuration settings
  ├── tools/          # MCP tools implementations
  │   ├── index.ts    # Tool registration
  │   └── *.ts        # Individual tool implementations
  ├── utils/          # Utility functions
  └── server.ts       # Main MCP server implementation

Adding New Tools

To add your own tools to the server:

  1. Create a new tool file in the src/tools/ directory
  2. Register the tool in src/tools/index.ts
  3. Enable the tool in src/config/settings.ts
  4. Rebuild the server with pnpm build
  5. Restart the server with pnpm start

License

MIT License - See LICENSE file for details.