[Windows] Chrome integration broken - MCP server uses Unix socket paths instead of Named Pipes (regression in v2.1.20+)

Resolved 💬 4 comments Opened Jan 28, 2026 by Dpotr Closed Mar 3, 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?

Claude in Chrome browser integration stopped working on Windows after upgrading from v2.1.17 to v2.1.20+. The tabs_context_mcp tool returns "Browser extension is not connected."

Root cause: The native host (claude.exe --chrome-native-host) creates a Windows Named Pipe at \\.\pipe\claude-mcp-browser-bridge-<username>, but starting from ~v2.1.20, the MCP server (claude.exe --claude-in-chrome-mcp) tries to connect via Unix domain sockets at %TEMP%\claude-mcp-browser-bridge-<username> and /tmp/claude-mcp-browser-bridge-<username>. Neither path exists — the two processes can't find each other.

Working version: v2.1.17 (confirmed Jan 23)
Broken versions: v2.1.20, v2.1.22 (confirmed Jan 27-28)

What Should Happen?

The MCP server (--claude-in-chrome-mcp) should connect to the Windows Named Pipe at \\.\pipe\claude-mcp-browser-bridge-<username> on Windows, matching the IPC mechanism used by the native host (--chrome-native-host).

This worked correctly in v2.1.17 and earlier.

Error Messages/Logs

Debug log from broken session (v2.1.22, ~/.claude/debug/<session>.txt):

2026-01-28T08:35:24.450Z [DEBUG] [Claude in Chrome] Starting MCP server
2026-01-28T08:35:24.459Z [DEBUG] [Claude in Chrome] MCP server started
2026-01-28T08:36:46.218Z [INFO] [Claude in Chrome] Executing tool: tabs_context_mcp
2026-01-28T08:36:46.220Z [INFO] [Claude in Chrome] Adding socket to pool: C:\Users\<username>\AppData\Local\Temp\claude-mcp-browser-bridge-<username>
2026-01-28T08:36:46.220Z [INFO] [Claude in Chrome] Adding socket to pool: /tmp/claude-mcp-browser-bridge-<username>
2026-01-28T08:36:46.235Z [INFO] [Claude in Chrome] Socket error (code: ENOENT): Error: connect ENOENT C:\Users\<username>\AppData\Local\Temp\claude-mcp-browser-bridge-<username>
2026-01-28T08:36:46.235Z [INFO] [Claude in Chrome] Socket error (code: ENOENT): Error: connect ENOENT /tmp/claude-mcp-browser-bridge-<username>
2026-01-28T08:36:51.233Z [INFO] [Claude in Chrome] No connected sockets in pool

Compare with working session (v2.1.17):

[Claude in Chrome] Attempting to connect to: \\.\pipe\claude-mcp-browser-bridge-<username>
[Claude in Chrome] Successfully connected to bridge server

Steps to Reproduce

  1. Install Claude Code v2.1.20+ on Windows
  2. Install Claude in Chrome extension (v1.0.40)
  3. Run claude --chrome
  4. Open Chrome — extension sidebar panel loads correctly
  5. Verify native host process is running: claude.exe --chrome-native-host (PID exists)
  6. Verify named pipe exists: \\.\pipe\claude-mcp-browser-bridge-<username>
  7. In Claude CLI, any browser tool (e.g. tabs_context_mcp) returns "Browser extension is not connected"

Diagnostic: Check MCP server debug log (~/.claude/debug/<session>.txt) — it attempts to connect to Unix domain socket paths instead of the Windows named pipe.

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

2.1.17

Claude Code Version

2.1.22 (broken), downgraded to 2.1.17 (working)

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Windows Terminal

Additional Information

All components verified working individually:

  • Registry key (HKCU:\Software\Google\Chrome\NativeMessagingHosts\com.anthropic.claude_code_browser_extension) — correct path
  • Native host manifest (com.anthropic.claude_code_browser_extension.json) — correct extension ID and batch file path
  • chrome-native-host.bat — exists and calls claude.exe --chrome-native-host
  • Chrome extension (ID: fcoeoabgfenejglbffodgkkbkcdhcgfn, v1.0.40) — installed with nativeMessaging permission
  • Native host process — running, creates named pipe at \\.\pipe\claude-mcp-browser-bridge-<username>
  • No Claude Desktop installed (no conflict)

The only broken link is the MCP server's connection logic which switched from Windows Named Pipes to Unix domain sockets between v2.1.17 and v2.1.20.

Workaround: claude install 2.1.17 --force restores Chrome integration.

View original on GitHub ↗

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