/mcp TUI locks terminal — no keys respond, must kill shell
Resolved 💬 3 comments Opened May 18, 2026 by js-teevee Closed May 20, 2026
Bug
Running /mcp in the Claude Code CLI hangs the terminal immediately. The interactive picker normally lets me arrow up/down between MCP servers, but in this state no input works — arrow keys, Esc, Ctrl+C, nothing. Only recourse is killing the shell.
Environment
- Claude Code: 2.1.118
- macOS: 26.5 (build 25F5042g)
- Shell: zsh
MCP setup
- ~16 MCP servers configured: 6 healthy local/SSE, ~10 organization-managed
claude.ai *connectors that show "! Needs authentication" or "✗ Failed to connect" inclaude mcp list. - The org-managed connectors cannot be removed from the CLI (
claude mcp removereports "no server found") and appear to be greyed-out / non-removable in claude.ai → Settings → Connectors, presumably because they're pushed by an org admin.
Steps to reproduce
- Have several
claude.ai *connectors in unauthenticated / failed state (visible inclaude mcp list). - Launch
claude. - Type
/mcp.
Expected
- TUI renders, arrow keys navigate the server list, Esc exits.
Actual
- TUI does not render usable state. All keyboard input is swallowed. Must kill the terminal process to recover.
Attempted workarounds
export MCP_TIMEOUT=3000— no effect (it controls server startup timeout, not the TUI).- Removing the one local OAuth-pending server (
sentry) — no effect; the org-managedclaude.ai Sentryremains and still hangs/mcp.
Suggested fixes
/mcpshould be cancellable (Esc / Ctrl+C should always work)./mcpshould render with a timeout per server rather than blocking the entire TUI until all servers respond.- Provide a way to opt out of org-pushed connectors locally (
~/.claude/settings.jsonflag or per-server disable).
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗