claude-code - 💡(How to fix) Fix [BUG] Claude in Chrome: Desktop App MCP tools always 'not connected' while CLI works fine [1 comments, 2 participants]

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…
GitHub stats
anthropics/claude-code#48413Fetched 2026-04-16 07:00:50
View on GitHub
Comments
1
Participants
2
Timeline
6
Reactions
0
Timeline (top)
labeled ×5commented ×1

Error Message

Uncaught (in promise) Error: Could not establish connection. Receiving end does not exist. at sidepanel-7GbZYdVD.is:6 at mcaPermissions-D76bhlyL.is:1

Root Cause

Root Cause Hypothesis

Fix Action

Fix / Workaround

Workaround: Use claude --chrome in terminal for Chrome integration tasks.

Code Example

⚠️ Claude in Chrome is not connected
The Chrome extension isn't reachable right now.

---

Uncaught (in promise) Error: Could not establish connection. Receiving end does not exist.
  at sidepanel-7GbZYdVD.is:6
  at mcaPermissions-D76bhlyL.is:1

---

PID 1450Started 2 days ago, still running
PID 34512Started 2 days ago, still running
PID 50991Started today
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code

What's Wrong?

Claude in Chrome (Beta) works correctly with the CLI (claude --chrome) but the Desktop App's own Chrome integration fails to connect. All MCP tool calls (mcp__Claude_in_Chrome__tabs_context_mcp, switch_browser, etc.) return "Claude in Chrome is not connected." The /chrome slash command also produces no response in the Desktop App.

This is the inverse of #33483 — CLI works, Desktop doesn't.

What Should Happen?

The Desktop App should connect to the Chrome extension via its native messaging host (com.anthropic.claude_browser_extension) and expose Chrome MCP tools in conversations.

Error Messages/Logs

Desktop App MCP tools always return:

⚠️ Claude in Chrome is not connected
The Chrome extension isn't reachable right now.

Chrome extension sidepanel console errors:

Uncaught (in promise) Error: Could not establish connection. Receiving end does not exist.
  at sidepanel-7GbZYdVD.is:6
  at mcaPermissions-D76bhlyL.is:1

Steps to Reproduce

  1. Install Chrome extension "Claude in Chrome" (v1.0.68) from Chrome Web Store
  2. Open Claude Desktop App
  3. Go to Settings → Claude in Chrome → Confirm "Allow extension" is selected
  4. Open Chrome with any tab
  5. In a Desktop App conversation, attempt any Chrome MCP tool call → Returns "not connected"
  6. Type /chrome in Desktop App → No response
  7. In terminal, run claude --chrome, type /chrome → Works correctly (Status: Enabled, Extension: Installed)

Debugging Performed

CheckResult
Chrome extension installed & enabled
Native messaging manifests exist✅ Both claude_browser_extension (Desktop) and claude_code_browser_extension (CLI)
Desktop native host binary exists/Applications/Claude.app/Contents/Helpers/chrome-native-host (2.1MB Mach-O)
CLI native host exists~/.claude/chrome/chrome-native-host (shell script → CLI 2.1.109)
Manual connectNative() test✅ Port object returned, no immediate disconnect
Desktop App Settings → Chrome in Chrome✅ Shows enabled, "Allow extension"
Desktop App /chrome command❌ No response
Desktop App MCP tools❌ Always "not connected"
CLI /chrome✅ Works perfectly

Native host zombie processes accumulate:

PID 1450  — Started 2 days ago, still running
PID 34512 — Started 2 days ago, still running
PID 50991 — Started today

The Desktop App's native host processes start when the extension attempts to connect, but they never properly communicate with the Desktop App and never terminate. Killing them does not resolve the issue.

Network analysis: Desktop App has no listening ports — all connections go outbound to Anthropic API. No local IPC channel (Unix socket, TCP, etc.) is visible between the Desktop App and its native host process.

Root Cause Hypothesis

The Desktop App registers the native messaging host manifest (com.anthropic.claude_browser_extension.json/Applications/Claude.app/Contents/Helpers/chrome-native-host), and Chrome can launch the native host. However, the Desktop App's internal MCP server never establishes a connection to the bridge socket created by the native host. The native host starts, creates a socket, but no consumer connects — resulting in zombie processes and permanent "not connected" state.

Related: #33483 (same area, opposite direction — CLI failing when Desktop is installed)

Claude Model

Sonnet

Is this a regression?

Unknown — Chrome integration has never worked for me in the Desktop App.

Claude Code Version

Desktop App: v1.2581.0 CLI: v2.1.109

Platform

Anthropic API (Max plan)

Operating System

macOS 26.2 (Build 25C56), Apple Silicon

Terminal/Shell

N/A (Desktop App issue)

Additional Information

Environment:

  • Chrome: 147.0.7727.56
  • Chrome Extension: v1.0.68 (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)

Workaround: Use claude --chrome in terminal for Chrome integration tasks.

extent analysis

TL;DR

The Desktop App's Chrome integration fails to connect due to the native host process not establishing a connection to the bridge socket, resulting in zombie processes and a permanent "not connected" state.

Guidance

  • Verify that the native messaging host manifest is correctly registered and the native host process is started when the Chrome extension attempts to connect.
  • Investigate why the Desktop App's internal MCP server is not establishing a connection to the bridge socket created by the native host, potentially due to a missing or incorrect IPC channel configuration.
  • Check for any differences in the native host configuration or behavior between the Desktop App and the CLI, which may provide clues to the root cause.
  • Consider adding logging or debugging statements to the native host process to understand its behavior and why it's not communicating with the Desktop App.

Example

No code snippet is provided as the issue is more related to the configuration and behavior of the native host process and the Desktop App's internal MCP server.

Notes

The root cause hypothesis provided in the issue suggests that the Desktop App's internal MCP server is not establishing a connection to the bridge socket created by the native host, but the exact reason for this is unclear. Further investigation is needed to determine the cause and develop a fix.

Recommendation

Apply workaround: Use claude --chrome in terminal for Chrome integration tasks, as the CLI version is working correctly. This will allow users to access Chrome integration functionality until the Desktop App issue is resolved.

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…

Still need to ship something?

×6

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

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix [BUG] Claude in Chrome: Desktop App MCP tools always 'not connected' while CLI works fine [1 comments, 2 participants]