MCP server processes not killed on CLI exit
- Dominant language
- Shell
- Stars
- 11.2k
- Forks
- 1.9k
- Avg merge
- 14h 16m
- Merged PRs (30d)
- 6
Description
### Describe the bug
_No response_
### Affected version
_No response_
### Steps to reproduce the behavior
Body: After exiting copilot, ssh-mcp (and other MCP) child processes remain alive in Activity Monitor. Each
consumes ~tens of MB. Expected behavior: CLI should send SIGTERM to all spawned MCP child processes on exit.
Steps to reproduce: 1. Start copilot with SSH MCP servers configured. 2. Exit with Ctrl+D or /exit. 3. Run
pgrep -la mcp — processes still alive.
### Expected behavior
_No response_
### Additional context
_No response_
Contributor guide
Research direction
Start by reproducing the issue from the copilot CLI with an SSH MCP server configured, exiting via Ctrl+D and /exit, then check the remaining processes with `pgrep -la mcp`. Trace the CLI entry point's shutdown and MCP child-process handling; done means all spawned MCP processes receive SIGTERM and no longer remain after exit.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- shell
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100