Chrome extension not connecting to native messaging host (macOS)

Resolved 💬 4 comments Opened Apr 7, 2026 by dantodor Closed May 20, 2026

Description

The Chrome extension (v1.0.66) never initiates a native messaging connection to the Claude Code native host, despite all components being correctly configured.

mcp__claude-in-chrome__tabs_context_mcp always returns "Browser extension is not connected."

Environment

  • OS: macOS Darwin 25.3.0 (Apple Silicon / Homebrew)
  • Claude Code: 2.1.81 (/opt/homebrew/Caskroom/claude-code/2.1.81/claude)
  • Chrome extension: v1.0.66 (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
  • Chrome profile: Default
  • Started with: claude --chrome

What's working

  • Native messaging host config exists at ~/Library/Application Support/Google/Chrome/NativeMessagingHosts/com.anthropic.claude_code_browser_extension.json with correct content (points to ~/.claude/chrome/chrome-native-host, allowed origin matches extension ID)
  • Native host wrapper script exists and is executable at ~/.claude/chrome/chrome-native-host
  • Native host process starts and runs (claude --chrome-native-host, creates socket at /tmp/claude-mcp-browser-bridge-dantodor/<pid>.sock)
  • Extension manifest includes nativeMessaging permission
  • Extension service worker is active (makes websocket + fetch calls to claude.ai)

What's not working

  • The extension never attempts a connectNative call — no native messaging activity or errors appear in the service worker DevTools console or network tab
  • The native host socket has no connected clients (only the host process itself is listening)
  • /chrome command in Claude Code session completes without error but doesn't resolve the issue

Steps to reproduce

  1. Install Claude Code 2.1.81 via Homebrew
  2. Install Chrome extension v1.0.66 from Chrome Web Store
  3. Quit and reopen Chrome
  4. Run claude --chrome
  5. Ask Claude to connect to Chrome — fails with "Browser extension is not connected"

Troubleshooting already attempted

  • Full Chrome restart (Cmd+Q and reopen) before starting Claude Code
  • Toggling extension off/on in chrome://extensions/
  • Running /chrome command within session
  • Verified native host process is running (ps aux)
  • Verified socket exists (lsof -U)
  • Inspected extension service worker DevTools — no errors, no native messaging activity
  • Confirmed only one Chrome profile (Default) with the extension installed

View original on GitHub ↗

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