[BUG] ExitPlanMode tool fails with "AbortError" - hangs indefinitely when MCP servers active
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)
- [x] I am using the latest version of Claude Code
What's Wrong?
When Claude Code calls the ExitPlanMode tool to exit plan mode, it hangs indefinitely showing "Honking..." status in the UI, then fails with error:
Tool permission request failed: AbortError
Steps to Reproduce:
- Start Claude Code with MCP servers enabled (Chrome extension + Notion connector)
- Ask Claude to plan a multi-step task (this triggers plan mode)
- Claude successfully writes plan to
~/.claude/plans/*.md - Claude calls
ExitPlanModetool - UI shows "Honking..." status indefinitely
- Eventually fails with
AbortError - Only way to recover is killing the process (
Ctrl+Corkill)
Process details showing the hung state:
--permission-mode plan --mcp-config {"mcpServers":{"Claude in Chrome":{"type":"sdk","name":"Claude in Chrome"},"mcp-registry":{"type":"sdk","name":"mcp-registry"},"ef89416a-...":{"type":"sdk","name":"..."}}}
The plan file is written successfully before the hang occurs. This appears to be a race condition or communication issue between the permission system and MCP servers.
What Should Happen?
ExitPlanMode should display an approval prompt in the UI, allowing the user to review and approve/reject the plan. After user confirmation, Claude Code should exit plan mode and proceed with implementation.
Error Messages/Logs
Tool permission request failed: AbortError
Steps to Reproduce
- Start Claude Code v2.1.8 with MCP servers enabled (Claude in Chrome extension + Notion connector are active)
- Ask Claude to plan a multi-step implementation task, e.g.: "Help me plan making these pages visually consistent"
- Claude enters plan mode and writes a plan to
~/.claude/plans/<random-name>.md - Claude calls the
ExitPlanModetool to request user approval - Observe: UI shows "Honking..." status and hangs indefinitely
- Wait ~30-60 seconds - eventually fails with
AbortError - Only recovery:
Ctrl+Corkill <pid>
Workaround: Kill process and restart. Avoid tasks that trigger plan mode, or disable MCP servers.
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.8
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
MCP Configuration from process:
{
"mcpServers": {
"Claude in Chrome": {"type": "sdk", "name": "Claude in Chrome"},
"mcp-registry": {"type": "sdk", "name": "mcp-registry"},
"ef89416a-1e16-4a1c-b8d0-156632e6d0da": {"type": "sdk", "name": "Notion connector"}
}
}
Hypothesis: The ExitPlanMode tool triggers a permission prompt that requires UI interaction, but something in the MCP server communication chain is blocking or not forwarding the approval request correctly, causing the tool to hang until it times out with an AbortError.
Environment details:
- macOS 26.2 (Build 25C56)
- Chrome extension: Claude in Chrome (active)
- Notion MCP connector (active)
This issue has 15 comments on GitHub. Read the full discussion on GitHub ↗