MCP servers issues on WSL
Issues the maintainers labelled both platform:wsl and area:mcp.
53 issues · 9 open · 44 resolved (83%) · first seen Feb 25, 2026
Is this getting better or worse?
This class of problem is converging. 14 new reports in the last 90 days vs 38 in the 90 before — -63%. The open backlog peaked at 17 in 2026-03 and sits at 9 today.
Derived by counting each matching issue from its creation date until it closed. First-party
computation over the anthropics/claude-code tracker — the trend is not published
anywhere upstream.
Which builds report this
42 of these reports name the Claude Code build they were running, spanning 28 releases. Heaviest reporters:
- Claude Code v2.1.81
- Claude Code v2.1.119
- Claude Code v2.1.246
- Claude Code v2.1.232
- Claude Code v2.1.101
- Claude Code v2.1.83
- Claude Code v2.1.71
- Claude Code v2.1.228
Report volume, not a defect count: an issue can mention a build without that build having caused the failure. Versions come from the version string in the bug-report template, matched against real published tags.
Do these get fixed?
Median time to close is 29 days across 44 closures. Of the 44 closures with a recorded reason, 30% were closed as completed and 31 as not-planned or duplicate. The most recent completed fix landed in 2026-06.
Workarounds reported by the community
20 of these issues post a workaround someone says worked. The highest-engagement ones:
- Remote MCP OAuth: prompt=consent hardcoded on every authorize request breaks Entra tenants with user-consent disabled
- …use Claude Code's remote MCP transport without one of these workarounds: 1. Change the tenant's consent policy — flip to "Allow user consent for apps". Works but requires a Global Admin to weaken the tenant-wide policy f…
Found in the description of #49722 · resolved - [BUG] /mcp menu freezes and becomes unresponsive when using --resume in WSL2
- Preflight Checklist - [x] I have searched [existing issues]( and this hasn't been reported yet - [x] This is a single bug report (please file separate reports for different bugs) -
Found in the description of #53035 · resolved - [BUG] CIMD redirect_uri validation fails against MCP servers that support DCR (v2.1.81)
- …sed, it should handle dynamic localhost ports per RFC 8252. Workaround Downgrade to Claude Code 2.1.80: claude update --version 2.1.80 What Should Happen? See description above. Error Messages/Logs Steps to Reproduce See…
Found in the description of #38296 · resolved - [BUG] Enterprise managed-mcp.json silently blocks all claude.ai cloud MCP connectors
- …, the enterprise guard should not skip the cloud MCP fetch: Workaround: A hook that fetches cloud servers from the API and merges them into : Related issues: 21874, 32955, 24825
Found in the description of #40559 · resolved - [BUG] Child/nested claude processes orphan on /exit in WSL systemd environments, triggering cross-process GUI freezes via vmmem CPU spikes
- …fies 1 and 2 since each orphaned keeps its MCP fleet alive. Workaround currently deployed (user-space, 3 layers) Because there is no built-in solution, the following workaround was deployed: Layer A — shell to reap child…
Found in the description of #51516 · resolved
Excerpts are quoted from the linked issue so you can judge relevance before opening it. Threads that only ask for a workaround, or report that there is none, are excluded. These are community suggestions, not official guidance from Anthropic — read the full thread before applying one.
Matching issues 1–53
Ranked by community engagement (reactions weighted over comments).
- Remote MCP OAuth: prompt=consent hardcoded on every authorize request breaks Entra tenants with user-consent disabled
- MCP server configuration stored in ~/.claude.json is undocumented and confusing
- [BUG] /mcp menu freezes and becomes unresponsive when using --resume in WSL2
- Claude-in-Chrome MCP tools steal window focus on every tool call
- [BUG] CIMD redirect_uri validation fails against MCP servers that support DCR (v2.1.81)
- [BUG] System prompt consumes ~9.3M tokens on every session after installing Claude Desktop on Windows (WSL setup)
- [BUG] Enterprise managed-mcp.json silently blocks all claude.ai cloud MCP connectors
- MCP OAuth callback uses random port, breaks in WSL2 environments
- [BUG] MCP HTTP OAuth: refresh token never used; multi-session sharing broken
- [BUG] Child/nested claude processes orphan on /exit in WSL systemd environments, triggering cross-process GUI freezes via vmmem CPU spikes
- headersHelper does not expand ${CLAUDE_PLUGIN_ROOT} or set it as env var
- [BUG] Tool Search (ENABLE_TOOL_SEARCH) does not defer HTTP/Streamable HTTP MCP tools — 120K tokens loaded upfront on every session
- linear-server MCP tool calls intermittently fail with user-rejection error during long sessions (hang / block / disconnect — root cause unknown)
- [BUG] Official Meta Ads MCP (mcp.facebook.com/ads) fails OAuth with "redirect_uris are not registered for this client"
- Telegram plugin: inbound messages not delivered to conversation (outbound works)
- [BUG]
- [BUG] VS Code extension hangs on WSL2 — PendingMigrationError (navigator global) prevents MCP server from starting
- [BUG] VS Code extension spawns duplicate MCP servers (still present in v2.1.71)
- Tool calls intermittently emitted as plain text (stray `court` + legacy `<invoke>` XML) instead of executing — hangs the session
- [BUG] v2.1.147 regression: HTTP MCP servers without optional GET listening stream - 404 misinterpreted as session expiry, transport torn down
- [BUG] /mcp` modal freezes TUI hard on WSL2 — only reproducible without `--debug
- [BUG] v2.1.105 breaks all stdio MCP servers - stdin pipe closed immediately on spawn
- [BUG] claude-code MCP tool calls execute but results never return to claude.ai chat
- PostToolUse hooks never fire for MCP tool calls — matcher verified correct, native tools fine (v2.1.198; is this intended?)
- [BUG] /mcp TUI arrow key navigation is inaccessible with NVDA screen reader on Windows + WSL2
- Plugin install pipeline strips top-level dotfiles (.mcp.json, .npmrc), breaking channel plugins
- [BUG] Claude Code cannot interact with VSCode (no IDE tools available - can't openDiff, getDiagnostics...)
- [BUG] Empty `projects[path].mcpServers: {}` shadows user-scope servers — should be passthrough, explicit deny required to override
- [BUG] Permission relay not working with --dangerously-load-development-channels server: channels
- [BUG] MCP channel notifications not delivered to session (Discord/Telegram plugins)
- [BUG] MCP tool call results not surfaced when server runs via Docker/Sail on Linux
- Claude Desktop cowork VM startup permanently breaks WSL2 interop (vsock accept4 failed 110)
- [BUG] MCP tools unavailable in agent-team exec subagents — mcp__*__* returns "No such tool available" despite servers being connected at session level
- [BUG] Discord plugin MCP notifications not received on Windows/WSL (works on native Linux)
- Telegram channel MCP notifications not delivered to Claude Code session
- [Bug] MCP tools not available in spawned sub-agents via Agent tool
- Telegram plugin: inbound channel notifications not surfaced (v2.1.81)
- [DISCUSSION] Power User Patterns: Hooks, Memory Lifecycle, and Compaction Quality
- [BUG] Regression: MCP tool search fails in 2.1.70 (working in 2.1.69)
- [BUG] Github MCP Authenticating not shows confirm page in browser
- [BUG] Allow disabling managed integrations (connectors) per product (Claude Code vs Cowork)
- [Bug] Since ~v2.1.228, stdio MCP first connection attempt is SIGTERMed at ~3 s and silently retried - orphans Windows-side servers under WSL and breaks single-instance servers (CONNECTION_CLOSED)
- M365 MCP OAuth flow broken: duplicate 'prompt' parameter causes AADSTS900971
- [BUG] Subagent frontmatter `disallowedTools` silently ignores MCP glob patterns (`mcp__<server>__*`) while `tools` honors them
- Headless `claude -p` returns 400 when a connector tool has a top-level anyOf/oneOf/allOf in input_schema
- [BUG] Desktop-launched sessions: claude.ai connector push (replaceRemoteMcpServers) is never applied to an in-flight turn — first turn of every fresh session has no connector tools
- HTTP MCP OAuth: valid token silently corrupted by status check (wrong redirectUri, empty accessToken)
- MCP server tools not indexed by tool discovery despite server showing "Connected"
- Session hangs indefinitely mid-turn: ide MCP tool calls (auto getDiagnostics on Write) have no timeout, while connect does
- [BUG] claude_code.pull_request.count matches MCP tool names, not pull requests — misses tools that put the verb in an argument (follow-up to #45776)
- --dangerously-load-development-channels is not propagated to the session process on daemon fork-resume (channel notifications silently dropped)
- [BUG] Plugin update fails silently when MCP server holds open file handles; stale binary continues serving requests
- MCP elicitation controls visible but not interactable in terminal (tmux/WSL)