Claude in Chrome MCP process doesn't reconnect when Chrome/extension restarts
Resolved 💬 3 comments Opened Jan 26, 2026 by Jaketdaniels Closed Jan 26, 2026
Description
The --claude-in-chrome-mcp process fails to reconnect to the Chrome native host socket when Chrome or the extension restarts. The /chrome command shows "Status: Enabled" and "Extension: Installed", but all mcp__claude-in-chrome__* tool calls return "Browser extension is not connected."
Steps to Reproduce
- Start Claude Code with
claude --chrome - Verify Chrome extension is working (tools work)
- Restart Chrome, or the extension disconnects for any reason
- The native host creates a new socket (e.g.,
/tmp/claude-mcp-browser-bridge-main/<new-pid>.sock) - Try using any
mcp__claude-in-chrome__*tool - Tool fails with "Browser extension is not connected"
Root Cause Analysis
The MCP process (--claude-in-chrome-mcp) is started when Claude Code launches but never reconnects when the socket changes.
Evidence from debugging:
=== MCP process (started 9:36PM) ===
PID 25391: /Users/main/.local/share/claude/versions/2.1.19 --claude-in-chrome-mcp
=== Native host (started 9:39PM after Chrome restart) ===
PID 25821: /Applications/Claude.app/Contents/Helpers/chrome-native-host
=== Socket ===
/tmp/claude-mcp-browser-bridge-main/25821.sock (created 9:39PM)
=== Socket connections ===
ONLY the native host (25821) is connected to the socket.
The MCP process (25391) has NO socket connections.
From chrome-native-host.log:
- Socket is created and listening: ✓
- "MCP client connected" message: Never appears
From lsof -p <mcp-pid>:
- Only has stdin/stdout/stderr (fds 0-2)
- No connection to any socket in
/tmp/claude-mcp-browser-bridge-main/
Expected Behavior
- The MCP process should poll/watch for new sockets in
/tmp/claude-mcp-browser-bridge-main/ - OR "Reconnect extension" from
/chromemenu should trigger reconnection - OR the MCP process should restart when Chrome reconnects
Actual Behavior
- MCP process sits idle with no socket connections
- "Reconnect extension" has no effect
- Only workaround is to completely restart Claude Code
Environment
- Claude Code version: 2.1.19
- macOS (Darwin 25.3.0)
- Chrome extension installed and enabled
- Native host working correctly (creates socket, logs show it listening)
Workaround
Exit Claude Code entirely and restart with claude --chrome. This creates a fresh MCP process that connects to the existing socket.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗