Windows: --channels flag does not spawn plugin MCP subprocess (bun/npx)

Resolved 💬 3 comments Opened Mar 21, 2026 by Fulin938975 Closed Mar 25, 2026

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

  1. Install Discord plugin: configured .env with DISCORD_BOT_TOKEN in ~/.claude/channels/discord/.env
  2. Run: claude.exe --channels plugin:discord@claude-plugins-official
  3. Claude Code starts and displays "Listening for channel messages from: plugin:discord@claude-plugins-official"
  4. Check running processes: no bun.exe or npx process is spawned
  5. 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.ts in .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 ignored explicitly
  • 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) in server.ts means 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.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗