Windows: --channels flag does not spawn plugin MCP subprocess (bun/npx)
Bug Description
claude --channels plugin:discord@claude-plugins-official on Windows shows "Listening for channel messages from: plugin:discord@claude-plugins-official" but never spawns the MCP server subprocess (bun.exe or npx). The Discord bot stays online but never receives or responds to messages.
Environment
- OS: Windows 10 (N150 mini PC)
- Claude Code: v2.1.81 (native installer)
- Bun: v1.3.11
- Node.js: v22.x (via nvm4w)
- Plan: Claude Max
Steps to Reproduce
- Install Discord plugin: configured
.envwithDISCORD_BOT_TOKENin~/.claude/channels/discord/.env - Run:
claude.exe --channels plugin:discord@claude-plugins-official - Claude Code starts and displays "Listening for channel messages from: plugin:discord@claude-plugins-official"
- Check running processes: no bun.exe or npx process is spawned
- DM the Discord bot → no response, nothing appears in Claude Code terminal
What I Tried
- Setting absolute path in
.mcp.json:"command": "C:\Users\Admin\.bun\bin\bun.exe"→ still no spawn - Changing to
npx tsx server.tsin.mcp.json→ still no spawn - Adding bun to system-level PATH → still no spawn
- Verified bun works manually:
bun run --cwd <plugin_dir> --silent start→ starts and connects to Discord, but shuts down when stdin closes (expected for standalone run) - Verified
npx tsx server.ts→ starts and connects to Discord successfully
Expected Behavior
Claude Code should spawn the MCP subprocess defined in the plugin's .mcp.json and keep it alive via stdio transport, just as it does on macOS/Linux.
Actual Behavior
Claude Code displays the "Listening" message but never spawns any child process for the plugin. The --channels flag appears to be a no-op on Windows native builds in terms of actually starting the MCP server.
Additional Context
- The npm-installed version (2.1.59) showed
--channels ignoredexplicitly - The native version (2.1.81) shows the "Listening" message but doesn't spawn
- Discord bot tools ARE available if you type prompts directly in the Claude Code terminal (suggesting the MCP config is read but the subprocess is not started, or starts and immediately dies before gateway connect)
process.stdin.on('end', shutdown)inserver.tsmeans the plugin will shut down if the stdio pipe is not maintained
Workaround Needed
A workaround or fix for Windows users to use the Discord channel plugin would be greatly appreciated.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗