src/Uno.UI.DevServer.Cli/README.md
The Uno DevServer CLI (uno-devserver) manages the local development server for Uno Platform projects. It handles DevServer lifecycle, IDE channel communication, add-in discovery, and exposes an MCP (Model Context Protocol) interface for AI-powered development tools.
The CLI is distributed as a .NET tool and is typically invoked via dotnet dnx:
dotnet dnx -y uno.devserver <command>
| Command | Description |
|---|---|
start | Start or reuse a DevServer for the current solution |
stop | Stop all running DevServer instances |
list | Display running DevServer instances with process ancestry |
cleanup | Remove stale DevServer registrations |
disco | Discover environment details (SDK, packages, active servers) |
health | Report DevServer health for the current workspace |
login | Open Uno Platform settings |
mcp serve | Start the MCP STDIO proxy for AI tool integration |
mcp status | Report MCP server registration state across IDE clients |
mcp install | Register MCP servers in IDE client config files |
mcp uninstall | Remove MCP server registrations |
The DevServer is a lightweight local HTTP server that provides bidirectional communication between the IDE and your running Uno Platform application:
.csproj.userThe IDE channel is a named pipe (\\.\pipe\{guid}) providing a direct JSON-RPC link between the IDE extension and the DevServer Host. It carries:
When a DevServer is already running (e.g. started by MCP), the CLI reuses it and rebinds the IDE channel without restarting the Host process.
The CLI exposes an MCP server (mcp serve) that AI coding assistants (Claude, Codex, Copilot, Cursor, etc.) can connect to. This enables AI tools to inspect your app, query diagnostics, and interact with the DevServer programmatically.
Use disco for a full environment diagnostic:
dotnet dnx -y uno.devserver disco
This shows: SDK version, DevServer package version, Host path, .NET version, resolved add-ins, and active server instances with their process ancestry chain.
Use health for a quick status check:
dotnet dnx -y uno.devserver health
The DevServer binds to local ports only and is intended for local development. Do not expose it to untrusted networks.