Chrome extension bridge connection fails on Windows - MCP server uses wrong socket path

Resolved 💬 2 comments Opened Feb 8, 2026 by Jehosephat Closed Feb 8, 2026

Environment:

  • Claude Code version: 2.1.37
  • Chrome extension version: 1.0.47 (extension ID: fcoeoabgfenejglbffodgkkbkcdhcgfn)
  • OS: Windows 11
  • Shell: PowerShell (Claude Code uses Git Bash internally)

Description:

The Claude in Chrome MCP server cannot connect to the Chrome extension's native messaging host on Windows because they use different socket/pipe paths. The native host creates a Windows named pipe, but the MCP server attempts to connect using Unix-style
socket paths that don't exist.

Native host behavior:
When Chrome launches the native host (claude.exe --chrome-native-host), it creates a Windows named pipe at:
\\.\pipe\claude-mcp-browser-bridge-{username}
This pipe is confirmed to exist via [IO.Directory]::GetFiles("\\.\pipe\").

MCP server behavior:
When the MCP server executes a tool call (e.g., tabs_context_mcp), it attempts to connect to two paths, neither of which exist on Windows:
C:\Users\{username}\AppData\Local\Temp\claude-mcp-browser-bridge-{username}
/tmp/claude-mcp-browser-bridge-{username}

Both fail with ENOENT (error code -4058), and after a 5-second timeout the server reports "No connected sockets in pool" and returns "Browser extension is not connected."

Relevant debug log output (from bridge log file):
[Claude in Chrome] Executing tool: tabs_context_mcp
[Claude in Chrome] Adding socket to pool: C:\Users\eganh\AppData\Local\Temp\claude-mcp-browser-bridge-eganh
[Claude in Chrome] Adding socket to pool: /tmp/claude-mcp-browser-bridge-eganh
[Claude in Chrome] Attempting to connect to: C:\Users\eganh\AppData\Local\Temp\claude-mcp-browser-bridge-eganh
[Claude in Chrome] Attempting to connect to: /tmp/claude-mcp-browser-bridge-eganh
[Claude in Chrome] Socket error (code: ENOENT): Error: connect ENOENT C:\Users\eganh\AppData\Local\Temp\claude-mcp-browser-bridge-eganh
[Claude in Chrome] Socket error (code: ENOENT): Error: connect ENOENT /tmp/claude-mcp-browser-bridge-eganh
[Claude in Chrome] No connected sockets in pool
[Claude in Chrome] Server is connected: false.

Expected behavior:
The MCP server should include \\.\pipe\claude-mcp-browser-bridge-{username} in its socket pool on Windows, matching the path the native host actually creates.

Notes:

  • The MCP server itself initializes correctly: MCP server "claude-in-chrome": Connection established with capabilities: {"hasTools":true,...}
  • The native host manifest, registry entries, and extension detection all work correctly
  • The /chrome CLI command successfully detects the extension and opens a tab group, but the bridge between the MCP server and native host never connects
  • Fresh reinstall of the extension does not resolve the issue (since the bug is in the path resolution)

View original on GitHub ↗

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