Skip to content

Copilot CLI terminal freezes when a stdio MCP child crashes mid-call #3067

@Windyztree

Description

@Windyztree

Bug: Copilot CLI terminal freezes when a stdio MCP child crashes mid-call

What happens

When a stdio MCP child process crashes during an in-flight tool call, the host Copilot CLI terminal becomes fully unresponsive — keystrokes, mouse, and Ctrl+C are all ignored. Only force-closing the Windows Terminal tab or killing pwsh.exe recovers it. Reproduced twice in a row on Windows 11; affected tabs stay frozen indefinitely.

Repro

A reliable trigger today is the WorkIQ MCP server, which has a deterministic msalruntime.DLL crash during concurrent token-refresh (microsoft/work-iq#113):

  1. /plugin install workiq@work-iq
  2. Authenticate, then issue several workiq-ask_work_iq calls in parallel.
  3. The WorkIQ child crashes (visible as Application Error in the Windows event log: workiq.exe, msalruntime.DLL, exception 0xc000027b).
  4. The Copilot CLI terminal hangs — no input accepted, including Ctrl+C.

Why it matters

A misbehaving plugin should never be able to take the host CLI hostage. Ctrl+C must always cancel the in-flight tool call and return control to the prompt, regardless of child-process state.

Likely cause

Host appears to do a blocking read on the child's stdout for a JSON-RPC response, and never notices process death / EOF. Concurrent calls compound the issue — multiple in-flight requests all become unresolvable after a single child crash.

Environment

  • Copilot CLI 1.0.40-3, Node v24.14.1
  • Windows 11 + Windows Terminal + PowerShell 7
  • Repro MCP: @microsoft/workiq 0.4.1.19742 (stdio, via npx)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:input-keyboardKeyboard shortcuts, keybindings, copy/paste, clipboard, mouse, and text inputarea:mcpMCP server configuration, discovery, connectivity, OAuth, policy, and registryarea:platform-windowsWindows-specific: PowerShell, cmd, Git Bash, WSL, Windows Terminal

    Type

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions