starwind-ui-mcp
by: Boston343
Local MCP server implementation for Starwind UI that you can use with Cursor, Windsurf, and other AI tools
πOverview
Purpose: To provide a TypeScript implementation of a Model Context Protocol (MCP) server for Starwind UI, facilitating the development and integration of Starwind UI components.
Overview: The Starwind UI MCP Server enhances the capabilities of AI assistants by offering specific tools designed for Starwind UI development. Through a local server, developers can utilize various functionalities to improve their workflow and enhance the functionality of their applications.
Key Features:
-
Tool-based Architecture: A modular design that allows the easy addition of new tools, promoting extensibility and adaptability.
-
Starwind UI Documentation Tool: Provides quick access to documentation links for different Starwind UI components, aiding developers in their implementation efforts.
-
Package Manager Detection: Automatically detects and uses the appropriate package manager (npm, yarn, pnpm), streamlining the development process.
-
LLM Data Fetcher: Capable of retrieving Starwind UI information efficiently for large language models (LLMs) with built-in caching and rate limiting, improving response times and reliability.
-
TypeScript Implementation: Developed in TypeScript, ensuring better type safety and an enhanced developer experience.
-
Standard I/O Transport: Utilizes standard input/output for seamless communication between the server and AI assistants, simplifying integration.
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:
- Windsurf MCP Setup: https://docs.codeium.com/windsurf/mcp
- Cursor MCP Setup: https://docs.cursor.com/context/model-context-protocol
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 uses PNPM for package management during development. If you use a different package manager, update the package.json
scripts accordingly.
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:
- Create a new tool file in the
src/tools/
directory - Register the tool in
src/tools/index.ts
- Enable the tool in
src/config/settings.ts
- Rebuild the server with
pnpm build
- Restart the server with
pnpm start
License
MIT License - See LICENSE file for details.