Repository navigation
v0.1.0 — Initial Release
mcp2win v0.1.0
Finally, MCP servers that just work on Windows.
Every MCP server README assumes macOS or Linux. You copy the config, paste it in, and nothing happens — because npx, uvx, and friends are .cmd batch shims on Windows, not real executables. mcp2win fixes your configs so your MCP servers actually start.
What it does
Wraps shim commands (npx, pnpx, bunx, uvx, yarn, tsx, ts-node, prettier, eslint, tsc, vite, turbo, next, nuxt, playwright) with cmd.exe /c so Windows can execute them. Automatically skips native executables (node, python, deno, bun), HTTP/SSE transports, and already-wrapped commands.
Three ways to use it
Transform config files — point it at your Claude Desktop, Cursor, VS Code, or Zed config:
mcp2win claude_desktop_config.json # preview changes
mcp2win --write claude_desktop_config.json # apply (creates .bak backup)
Translate CLI commands — paste any provider's mcp add command and get the Windows version:
mcp2win claude mcp add github-server -- npx -y @modelcontextprotocol/server-github
mcp2win code --add-mcp '{"name":"my-server","command":"npx","args":["-y","@pkg"]}'
mcp2win qchat mcp add -- npx -y @pkg
Convert JSON directly — inline or piped from stdin:
mcp2win '{"command":"npx","args":["-y","@modelcontextprotocol/server-github"]}'
cat config.json | mcp2win
Supported clients
Claude Code, Claude Desktop, VS Code, Cursor, Zed, Amazon Q, Gemini CLI
Additional features
--unwrapto reverse the transformation (removecmd.exe /cwrapping)--resolveto resolve commands to absolute paths via PATH/PATHEXT--dry-run,--quiet,-ofor scripting and CI use- Incremental
.bakbackups (never overwrites existing backups) - Handles Zed's nested command object format
- Preserves all extra fields (
env,disabled, etc.) - Idempotent — safe to run multiple times
Install
npm i -g @operatorkit/mcp2win
Or download a binary below for your platform.