claude-code - 💡(How to fix) Fix Claude in Chrome: extension never connects to Claude Code CLI (macOS)

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Code Example

>>> {"type": "ping"}
<<< {"type": "pong", "timestamp": 1779846273608}
>>> {"type": "get_status"}
<<< {"type": "status_response", "native_host_version": "1.0.0"}
RAW_BUFFERClick to expand / collapse

Environment

  • Claude Code: 2.1.152 (native install, macOS)
  • Chrome Extension: Claude in Chrome (Beta) v1.0.72 (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
  • Chrome: 148.0.7778.179
  • macOS: Darwin 25.5.0 (arm64)
  • Claude Desktop App: installed at /Applications/Claude.app

Problem

mcp__claude-in-chrome__list_connected_browsers always returns "Browser extension is not connected", regardless of configuration. The extension has never worked on this machine.

Diagnosis

Extensive debugging revealed the following:

1. Native host binary works correctly

The Claude Code native host (--chrome-native-host) works perfectly when tested directly:

>>> {"type": "ping"}
<<< {"type": "pong", "timestamp": 1779846273608}
>>> {"type": "get_status"}
<<< {"type": "status_response", "native_host_version": "1.0.0"}

Logs go to stderr (not stdout), so the native messaging protocol is clean.

2. Extension connects but rapidly cycles mcpConnected

Extension LevelDB storage shows mcpConnected rapidly toggling between true and false dozens of times, settling on false. The extension successfully connects (pong works) but the connection drops immediately and repeatedly.

3. Two native host configs conflict

Two native messaging host configs exist, both allowing the same extension ID:

  • com.anthropic.claude_browser_extension/Applications/Claude.app/Contents/Helpers/chrome-native-host
  • com.anthropic.claude_code_browser_extension → Claude Code binary

The extension code tries them sequentially (Desktop first, then Claude Code) and uses only the first successful connection. This means:

  • If Claude.app host wins → Claude Code CLI never gets a connection
  • If Claude Code host wins → Claude.app never gets one

4. Claude Code CLI never connects to the bridge socket

Even when a native host is running and listening on /tmp/claude-mcp-browser-bridge-$USER/<pid>.sock, the Claude Code CLI process (PID verified via lsof) has no connection to the socket. The built-in MCP server returns "not connected" instantly without attempting socket connection.

5. Protocol mismatch between hosts

  • Claude Code's native host socket responds correctly to length-prefixed JSON messages
  • Claude.app's native host socket accepts connections but does not respond to the same protocol (times out on length-prefixed ping, returns empty on raw JSON)

6. Fresh install doesn't help

Complete uninstall + reinstall of the extension, Chrome restart, Claude.app running — same result.

Expected behavior

list_connected_browsers should detect the extension and allow browser automation.

Steps to reproduce

  1. Install Claude Code CLI 2.1.152
  2. Install Claude in Chrome extension from Web Store
  3. Have Claude.app Desktop also installed
  4. Log into claude.ai in Chrome
  5. Run mcp__claude-in-chrome__list_connected_browsers → always "not connected"

Questions

  1. Does claude-in-chrome require Claude Desktop app to be running and acting as bridge?
  2. Is there a known incompatibility between CLI 2.1.152 and extension 1.0.72?
  3. Should the extension connect to both native hosts simultaneously, or is the sequential first-wins approach intentional?

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

list_connected_browsers should detect the extension and allow browser automation.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING