Integrate Starwind UI with AI Code Assistants
MCP server for Starwind UI/Pro Astro component libraries giving AI coding tools four intent-based tools for init, docs, install commands and search.
0.5.0Add to Favorites
Why it matters
Empower AI code assistants like Claude, Windsurf, and Cursor to seamlessly work with Starwind UI components. This asset provides the necessary tools and configurations to enhance AI-driven development workflows for Starwind UI projects.
Outcomes
What it gets done
Initialize new Starwind UI projects with AI assistance.
Generate installation and update commands for Starwind UI components.
Retrieve documentation links and LLM data for Starwind UI components.
Detect and utilize the appropriate package manager for your project.
Source
Get it from source
Spark does not host a copy of it.
Open sourceReports
Agent outcome reports
No reports yet
Capabilities
Tools your agent gets
Initializes a new Starwind UI project
Generates installation commands for Starwind UI components
Generates update commands for Starwind UI components
Returns documentation links for Starwind UI components and guides
Fetches LLM data from starwind.dev with rate limiting and caching
Detects and returns information about the current package manager
Overview
Starwind UI MCP Server
This MCP server gives AI coding tools four intent-based commands for Starwind UI and Starwind Pro: starwind_init to scaffold a project, starwind_add for validated package-manager-aware install commands, starwind_search across components and Pro blocks, and starwind_docs for live documentation. Use it when building an Astro project with Starwind UI or Starwind Pro and an AI assistant needs to initialize, install, search, or document components - not for other frameworks or component libraries.
What it does
Starwind UI MCP Server is a TypeScript MCP server for Starwind UI and Starwind Pro (Astro component libraries), giving AI coding tools like Codex, Claude Code, and Cursor a compact, intent-based set of four tools rather than a wrapper for every CLI command. starwind_init generates init commands for new Starwind UI projects, defaulting to Pro. starwind_docs fetches live documentation from starwind.dev with caching and topic filtering. starwind_add generates validated install commands with package manager detection. starwind_search searches standard Starwind UI components and Starwind Pro blocks with CLI-shaped filters, returning grouped standard-component and Pro-block results, with Pro block results filterable by plan, category, limit, and offset. The server deliberately does not expose standalone tools for less common or destructive CLI operations like setup, update, or remove - for Starwind Pro setup on an already-initialized project, it instead returns the guidance command starwind@latest setup --yes via starwind_add or starwind_search, while a brand-new Pro project uses init --pro via starwind_init. Supporting features: live documentation pulled from starwind.dev's llms.txt, component validation against live component metadata with a refreshed fallback list if that's unavailable, automatic detection of npm/yarn/pnpm as the project's package manager, and caching with sensible rate limits to keep repeated documentation and search calls efficient.
When to use - and when NOT to
Use it when building an Astro project with Starwind UI or Starwind Pro and want an AI coding assistant to initialize a project, generate correct install commands for a component, search available components and Pro blocks, or pull current documentation - all matched to the project's actual package manager. It's scoped specifically to Starwind UI/Pro on Astro, not a general component-library or framework-agnostic UI tool, and it won't run less-common CLI operations like update or remove directly - those come back as guidance commands to run yourself.
Inputs and outputs
Input is a project-initialization request, a component or Pro block name to install, a search query with optional plan/category/limit/offset filters, or a documentation topic. Output is a validated, package-manager-correct command to run, live documentation content, or grouped search results across standard components and Pro blocks.
Integrations
Configured via each client's own MCP config - ~/.codex/config.toml for Codex, .mcp.json for Claude Code, .cursor/mcp.json for Cursor - all launching the server the same way:
{
"mcpServers": {
"starwind-ui": {
"command": "npx",
"args": ["-y", "@starwind-ui/mcp"],
"env": {}
}
}
}
Who it's for
Astro developers using Starwind UI or Starwind Pro who want their AI coding assistant to generate correct, package-manager-aware install commands and search or pull documentation automatically, without memorizing the Starwind CLI or manually checking the docs site. The project is MIT-licensed.
Source README
Official MCP Registry
·
io.github.starwind-ui/mcp
A TypeScript Model Context Protocol server for Starwind UI v3 and Starwind Pro. It gives AI clients current, framework-aware guidance for Astro and React projects.
Quick start
For the maintained client setup guide, see the Starwind UI MCP documentation.
Codex (~/.codex/config.toml):
[mcp_servers.starwind_ui]
command = "npx"
args = ["-y", "@starwind-ui/mcp"]
enabled = true
Claude Code (.mcp.json) or Cursor (.cursor/mcp.json):
{
"mcpServers": {
"starwind-ui": {
"command": "npx",
"args": ["-y", "@starwind-ui/mcp"]
}
}
}
Restart the client or reload its MCP servers after changing the configuration.
v3 model
Starwind UI v3 has three related surfaces. The MCP keeps them distinct:
| Surface | What it represents | MCP behavior |
|---|---|---|
| Styled components | Copy-owned UI components with Astro and/or React implementations | Search and install with starwind_search and starwind_add |
| Primitives | Lower-level Astro and React adapters, backed by Starwind Runtime where applicable | Search with surface: "primitive"; install with the v3 primitives add command |
| Runtime | Framework-neutral behavior APIs | Fetch with starwind_docs using the Runtime topic or surface |
The server validates these layers against the versioned ai-manifest.json, caches validated data, and falls back to a bundled v3 snapshot if the site is unavailable.
Tools
| Tool | Purpose |
|---|---|
starwind_init |
Generate v3 initialization commands for an existing Astro or React project. Pro is opt-in. |
starwind_add |
Validate requests and generate installation or deferred-install commands for styled components, primitives, or Astro-only Pro blocks. |
starwind_search |
Search styled components, primitives, and Pro blocks with framework metadata and filters. |
starwind_docs |
Resolve exact component, primitive, Runtime, migration, and framework documentation. |
starwind_migrate |
Inspect a project and generate safe, interactive-first v2-to-v3 migration guidance. |
Tool calls return both readable JSON text and MCP structuredContent.
Requirements and behavior
- Generated v3 CLI commands require Node.js 22.12.0 or newer.
starwind_inittargets existing Astro 5+ or React 18+ projects and lets the CLI auto-detect the framework unlessframeworkis supplied.- Free
@starwind-pro/*catalog blocks work after ordinary initialization. Paid blocks require explicit authorization; passpro: trueonly when it is required. - Starwind Pro blocks currently target Astro. React searches omit them, and React add requests reject them explicitly.
- Migration is interactive by default. Set
yes: trueonly when backup-and-overwrite behavior is intended. - Package-manager and project context are detected locally when possible, and add commands pass the resolved package manager to the CLI. No tool executes the generated command.
Upgrading from free to Pro
The MCP keeps Pro discoverable without forcing paid setup. Search results link to the Pro catalog, free Pro blocks remain directly installable, and paid results include a structured proUpgrade path with purchase and installation links.
For an existing Astro project, the MCP recommends:
pnpm dlx starwind@latest setup --yes
The setup command auto-detects the project's package manager, so it does not need a --package-manager flag. It prepares the Pro registry and .env.local; replace the STARWIND_LICENSE_KEY placeholder with the purchased key, then run the returned deferredCommand. Treat the key as sensitive: keep .env.local out of source control and never expose the key in logs or client-side code. A project initialized with pro: true receives the equivalent init --pro command instead.
Development
pnpm build
pnpm lint
pnpm test:run
Run the opt-in production manifest contract test with:
RUN_LIVE_CONTRACT_TESTS=1 pnpm test:run src/utils/starwind_live_contract.test.ts
Security
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.
