A side-by-side look at the Localhost MCP and Shadcn Ui MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Localhost MCP for developer tools work as a local process; choose Shadcn Ui MCP Server for developer tools as a local process. You can also run both side by side in one mcpServers block.
list_dev_servers, port_info, kill_server.MCP_TRANSPORT_MODE, MCP_PORT, MCP_HOST, MCP_CORS_ORIGINS, GITHUB_PERSONAL_ACCESS_TOKEN, UI_LIBRARY.get_component, get_component_demo, list_components.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Developer Tools | Developer Tools |
| Quality signal | 59/100 · Good | 72/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | No auth required | API key required |
| Pricing | Free | Free |
| Required env vars | None listed | MCP_TRANSPORT_MODEMCP_PORTMCP_HOSTMCP_CORS_ORIGINSGITHUB_PERSONAL_ACCESS_TOKENUI_LIBRARY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 4 | 3,061 |
| Directory activity | 3 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 5 | 10 |
| Full listing | View Localhost MCP | View Shadcn Ui MCP Server |
list_dev_serversRead-only. Lists every local development server (next, vite, nuxt, remix, astro, rails, django, flask, express, deno, bun, etc.) currently LISTENING on a TCP port. For each: port, pid, process name, command line, working directory, project name, detected framework, uptime, memory (MB), CPU %, and owning user. Uses `lsof` on macOS/Linux and `netstat` on Windows; on Windows the cwd/framework fields are limited. Takes no arguments. Returns `{ count, servers[] }`.port_infoRead-only. Inspects a single TCP port and reports the dev server holding it (same fields as `list_dev_servers`). If nothing is listening, or the listener is not a recognised dev process, returns `{ port, status: "free" }`. Useful for answering "what's on :3000?" before starting or killing something.kill_serverTerminates a local dev server by `pid` or `port`. DESTRUCTIVE. Safe by default: with no `confirm`, this is a DRY RUN — it reports what it would kill and changes nothing. Pass `confirm: true` to actually terminate: sends SIGTERM, waits up to 5s, then escalates to SIGKILL (or SIGKILL immediately if `force: true`). Refuses PIDs below 1000 and processes that don't look like dev servers. Provide exactly one of `pid` or `port`. Returns what was (or would be) killed and the signal used.find_zombiesRead-only. Flags dev servers that look abandoned — all three of: uptime > 6h AND CPU < 1% AND memory > 100MB. By default it excludes known always-on noise (VS Code server, language servers, other MCP servers, postgres/redis, sidekiq, etc.); set `include_excluded: true` to also list those. Each candidate comes with the reasons it matched. This tool never kills anything — pass results to `kill_server`. Returns `{ count, candidates[] }`.port_conflictRead-only. Diagnoses an `EADDRINUSE` situation: given a port, returns the dev server currently blocking it plus 5 free alternative ports nearby. Use it when a `listen EADDRINUSE` error fires and you want both the culprit and a port to switch to.get_componentGet the source code for a specific shadcn/ui v4 componentget_component_demoGet demo code illustrating how a shadcn/ui v4 component should be usedlist_componentsGet all available shadcn/ui v4 componentsget_component_metadataGet metadata for a specific shadcn/ui v4 componentget_directory_structureGet the directory structure of the shadcn-ui v4 repositoryget_blockGet source code for a specific shadcn/ui v4 block (e.g., calendar-01, dashboard-01)list_blocksGet all available shadcn/ui v4 blocks with categorizationapply_themeApply a TweakCN theme preset to the projectlist_themesList available tweakcn themesget_themeGet details of a specific tweakcn themePaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"hasanjahidul-localhost-mcp": {
"command": "npx",
"args": [
"-y",
"localhost-mcp"
]
}
}
}
{
"mcpServers": {
"jpisnice-shadcn-ui-mcp-server": {
"command": "npx",
"args": [
"-y",
"@jpisnice/shadcn-ui-mcp-server"
],
"env": {
"MCP_TRANSPORT_MODE": "YOUR_MCP_TRANSPORT_MODE_HERE",
"MCP_PORT": "YOUR_MCP_PORT_HERE",
"MCP_HOST": "YOUR_MCP_HOST_HERE",
"MCP_CORS_ORIGINS": "YOUR_MCP_CORS_ORIGINS_HERE",
"GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_GITHUB_PERSONAL_ACCESS_TOKEN_HERE",
"UI_LIBRARY": "YOUR_UI_LIBRARY_HERE"
}
}
}
}