Claude in Chrome: Extension connects to cloud bridge but never initiates native messaging to CLI on Windows
Bug Description
The Claude in Chrome extension (v1.0.69) successfully connects to wss://bridge.claudeusercontent.com (cloud bridge) but never initiates native messaging to the local Claude Code CLI. As a result, all mcp__claude-in-chrome__* tools in the CLI return "Browser extension is not connected."
Environment
- OS: Windows 11 Home Single Language (10.0.26200)
- Claude Code CLI version: 2.1.119
- Claude in Chrome extension version: 1.0.69
- Extension ID:
fcoeoabgfenejglbffodgkkbkcdhcgfn - Chrome: latest
Steps to Reproduce
- Install Claude in Chrome extension and log in with the same account as Claude Code CLI
- Run Claude Code CLI in a terminal session
- Ask Claude to use any
mcp__claude-in-chrome__*tool (e.g.,tabs_context_mcp) - Observe the error: "Browser extension is not connected"
Diagnosis
All infrastructure is correctly set up:
- ✅ Native messaging host registered in Windows Registry:
HKCU\Software\Google\Chrome\NativeMessagingHosts\com.anthropic.claude_code_browser_extension - ✅ Manifest file exists at:
C:\Users\<user>\AppData\Roaming\Claude Code\ChromeNativeHost\com.anthropic.claude_code_browser_extension.json - ✅ Native host bat file exists:
C:\Users\<user>\.claude\chrome\chrome-native-host.bat→ callsclaude.exe --chrome-native-host - ✅ Named pipe created by CLI:
\.\pipe\claude-mcp-browser-bridge-namka - ✅ Extension authenticated with correct account
- ✅ Extension connects to cloud bridge:
wss://bridge.claudeusercontent.com/chrome/<uuid>(Status 101) - ❌ Extension service worker console shows zero native messaging connection attempts
Root Cause (Suspected)
The Chrome extension only uses the cloud bridge path (bridge.claudeusercontent.com) and does not initiate chrome.runtime.connectNative() to the local CLI. This may be a Windows-specific issue where the extension does not detect or does not attempt to connect to a locally running Claude Code CLI session.
When claude.exe --chrome-native-host is run manually, output shows:
[Claude Chrome Native Host] Initializing...
[Claude Chrome Native Host] Creating socket listener: \.\pipe\claude-mcp-browser-bridge-namka
[Claude Chrome Native Host] Socket server error: ...
The error occurs because the pipe already exists (created by the running CLI session), suggesting a potential conflict in which side should create vs connect to the pipe.
Expected Behavior
CLI tools (mcp__claude-in-chrome__tabs_context_mcp, etc.) should successfully connect to the Chrome extension and return browser tab context.
Workaround
Using claude.ai/code (web version) in Chrome — the extension connects via cloud bridge and browser automation works there.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗