[Bug] Claude in Chrome MCP 'not connected' — Claude Code messaging host file never installed on macOS (Apple Silicon)
[Bug] Claude in Chrome MCP "not connected" — Claude Code messaging host file never installed on macOS (Apple Silicon)
TL;DR
Fresh macOS install with both Claude Desktop AND Claude Code → Chrome native messaging directory contains ONLY Desktop's host config (com.anthropic.claude_browser_extension.json). NO Claude Code messaging host file (com.anthropic.claude_code_browser_extension.json) ever gets installed. Result: Claude Code's mcp__Claude_in_Chrome__* tools always return "not connected" because Chrome has nowhere to route Claude Code traffic.
Repro environment
- OS: macOS Sequoia 26 · Apple Silicon
- Chrome: latest stable
- Claude Desktop:
/Applications/Claude.appv1.7196.0 · running pid 3828 (auto-starts on login) - Claude Code:
~/Library/Application Support/Claude/claude-code/2.1.138/ - Claude in Chrome extension: installed · signed in · extension ID
fcoeoabgfenejglbffodgkkbkcdhcgfn - In-browser Claude sidebar: works perfectly (Desktop-routed)
Evidence
1. Chrome NativeMessagingHosts dir — ONLY Desktop's host registered
$ ls -la ~/Library/Application\ Support/Google/Chrome/NativeMessagingHosts/ | grep -i anthropic
-rw-r--r-- 1 jeets staff 411 May 18 02:19 com.anthropic.claude_browser_extension.json
NO com.anthropic.claude_code_browser_extension.json file exists. Anywhere.
2. Desktop's host config points back at Claude.app helper
$ cat ~/Library/Application\ Support/Google/Chrome/NativeMessagingHosts/com.anthropic.claude_browser_extension.json
{
"name": "com.anthropic.claude_browser_extension",
"description": "Claude Browser Extension Native Host",
"path": "/Applications/Claude.app/Contents/Helpers/chrome-native-host",
"type": "stdio",
"allowed_origins": [
"chrome-extension://dihbgbndebgnbjfmelmegjepbnkhlgni/",
"chrome-extension://fcoeoabgfenejglbffodgkkbkcdhcgfn/",
"chrome-extension://dngcpimnedloihjnnfngkgjoidhnaolf/"
]
}
Extension routes to Claude.app · NOT Claude Code.
3. Claude Code has no installer / register command for browser
$ claude --help 2>&1 | grep -iE 'chrome|browser|extension|install'
(no output · no flags exist)
4. Claude Code install dir has no chrome-native-host helper binary
$ find ~/Library/Application\ Support/Claude/claude-code -name "*chrome*" -o -name "*browser*" -o -name "*native_messag*"
(no output · no helper shipped)
5. MCP probes from Claude Code all fail same way
mcp__Claude_in_Chrome__tabs_context_mcp → "Claude in Chrome is not connected"
mcp__Claude_in_Chrome__list_connected_browsers → "Claude in Chrome is not connected"
mcp__Claude_in_Chrome__switch_browser → "Claude in Chrome is not connected"
Even switch_browser (which the tool description says broadcasts a connection request) fails — meaning the request never reaches the extension.
Expected behavior
When Claude Code is installed alongside Claude Desktop · either:
- Claude Code installer should also install a
com.anthropic.claude_code_browser_extension.jsonmessaging host config + ship achrome-native-hosthelper binary - OR Claude Code should fall back to using Claude Desktop's helper as a relay
- OR Claude Code CLI should expose an explicit
claude --install-chrome-bridgecommand that creates the messaging host config on demand
Current behavior: Claude Code MCP browser tools are silently non-functional on any Mac install where Claude Desktop is also present (which is the common case).
Related issues
- #20887 — Extension connects to Claude Desktop instead of Claude Code when both installed
- #20683 — MCP bridge not connecting when Claude.app is also installed
- #21279 — Browser extension not connected despite being connected
- #21331 — Connection fails despite extension installed and working
- #29528 — Browser extension not connected despite correct setup
- #54211 — MCP returns "not connected" despite all plumbing healthy
- #56241 — Bridge pairing state broken server-side for 7+ weeks · acknowledged backend issue
Multiple users · 6+ weeks open · no engineer action per the comments.
Workarounds I've validated
- ✓ In-browser Claude sidebar works (Desktop-routed) for DOM interaction
- ✓ Control Chrome MCP (
mcp__Control_Chrome__*) works for navigation + JS exec (AppleScript-based · different transport) - ✗ Quitting Claude Desktop does NOT help (Code still has no messaging host file installed)
- ✗ Restarting Chrome does NOT help (still no Code messaging host config to read)
- ✗ Reinstalling extension does NOT help
Ask
Ship a Claude Code installer step that registers the messaging host file + helper binary. Or document the manual creation steps in https://code.claude.com/docs/en/chrome.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗