Chrome extension MCP process becomes stale mid-session, kill deregisters tools permanently

Resolved 💬 6 comments Opened Feb 17, 2026 by illlefr4u Closed Mar 29, 2026

Description

The Chrome extension (claude-in-chrome) frequently disconnects during a session. The MCP process (--claude-in-chrome-mcp) caches an OAuth token in memory that expires after ~2 days, but disconnects also happen within shorter sessions.

Symptoms

  1. Mid-session disconnect: Chrome extension tools start returning "Browser extension is not connected" after working fine earlier in the same session
  2. Screenshot vs other tools: Screenshots fail (go through native host socket) while navigate/click/find still work — then eventually everything fails
  3. Kill + reconnect works once: kill <pid> of the --claude-in-chrome-mcp process, then calling a tool again reconnects successfully
  4. Second disconnect is permanent: After killing the process a second time (or sometimes after the first kill), ALL chrome tools disappear from the session entirely (Error: No such tool available: mcp__claude-in-chrome__*). Only a full CLI restart recovers them.

Reproduction

  1. Start Claude Code session with Chrome extension connected
  2. Use chrome tools (navigate, find, click) — works fine
  3. Continue session for 30-60 minutes with mixed tool usage (chrome + non-chrome)
  4. Chrome tools start failing with "not connected"
  5. Kill the --claude-in-chrome-mcp process (ps aux | grep claude-in-chrome-mcp)
  6. Chrome tools reconnect and work again
  7. After some more time, disconnect happens again
  8. Kill process again → tools are now completely deregistered from the session

Expected behavior

  • Chrome extension should maintain connection throughout a session
  • If disconnected, killing the MCP process and calling a tool should always reconnect
  • Tools should never be permanently deregistered from a running session

Environment

  • macOS 14 (Darwin 24.6.0)
  • Claude Code 2.1.44
  • Chrome with Claude extension installed
  • Multiple Claude Code sessions sometimes run concurrently (may contribute to socket conflicts)

Workaround

Kill the MCP process with SIGTERM (not SIGKILL). If tools are deregistered, restart the CLI session entirely.

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗