[BUG] Chrome extension connection fails on Windows - named pipe EADDRINUSE conflict

Resolved 💬 3 comments Opened Feb 12, 2026 by Scn64 Closed Feb 15, 2026

Preflight Checklist

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

What's Wrong?

Bug Description

Claude Code cannot connect to the Chrome browser extension on Windows. All calls to tabs_context_mcp return "Browser extension is not connected."

Environment

  • Windows 10 (MSYS_NT-10.0-19045)
  • Claude Code installed via miniconda3 (node.exe)
  • Chrome with Claude extension installed (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
  • Claude Desktop also installed

Root Cause Found

The native host process (chrome-native-host) creates a named pipe \\.\pipe\claude-mcp-browser-bridge-{username}. When testing the native host directly, it fails with:

Socket server error: Error: listen EADDRINUSE: address already in use \\.\pipe\claude-mcp-browser-bridge-cough

Chrome automatically spawns the native host process when the extension loads, which grabs the pipe. Claude Code's MCP client then cannot connect.

Steps Taken

  1. Renamed Claude Desktop's native messaging host config (com.anthropic.claude_browser_extension.json -> .json.disabled) to prevent Desktop from intercepting
  2. Verified Claude Code's native host config exists at AppData\Roaming\Claude Code\ChromeNativeHost\com.anthropic.claude_code_browser_extension.json and points to the correct bat file
  3. Verified the bat file, node.exe, and cli.js all exist at the expected paths
  4. Killed stale chrome-native-host node processes - new ones respawn via Chrome but connection still fails
  5. Restarted Chrome multiple times
  6. Extension is installed in the Default Chrome profile and the extension ID matches the allowed_origins in the host config

What Should Happen?

tabs_context_mcp should connect to the Chrome extension and return tab information.

Error Messages/Logs

Socket server error: Error: listen EADDRINUSE: address already in use \\.\pipe\claude-mcp-browser-bridge-cough

Every call to tabs_context_mcp returns: "Browser extension is not connected."

Steps to Reproduce

  1. Install Claude Code on Windows 10 via miniconda3
  2. Install the Chrome Claude extension (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
  3. Also have Claude Desktop installed
  4. Open Chrome - the extension automatically spawns the native host process which grabs the named pipe \\.\pipe\claude-mcp-browser-bridge-{username}
  5. In Claude Code, call tabs_context_mcp
  6. Observe error: "Browser extension is not connected."
  7. Test native host directly - see EADDRINUSE error because Chrome already owns the pipe
  8. Kill stale chrome-native-host processes - Chrome respawns them, connection still fails

Claude Model

None

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

latest

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Other

Additional Information

Actual Behavior: Every call returns "Browser extension is not connected" regardless of Chrome state.

Terminal: MSYS_NT-10.0-19045 (Git Bash / MSYS2 environment)

View original on GitHub ↗

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