Chrome integration: tabs_context_mcp works but all tab operations fail with 'No tab available'

Resolved 💬 7 comments Opened Jan 26, 2026 by ghost Closed Feb 28, 2026

Description

When using claude --chrome, the Chrome browser integration has a bug where tabs_context_mcp successfully lists tabs, but all other tab operations (navigate, read_page, form_input, javascript_tool, etc.) fail with "No tab available".

Environment

  • Claude Code version: 2.1.19
  • OS: macOS Darwin 25.2.0
  • Chrome version: 144.0.7559.97

Steps to Reproduce

  1. Run claude --chrome
  2. Open Chrome and create an MCP tab group using tabs_context_mcp with createIfEmpty: true
  3. Manually navigate a tab to a regular webpage (e.g., google.com) since chrome://newtab pages can't be scripted
  4. Drag that tab into the Claude tab group
  5. Verify tab appears in tabs_context_mcp output
  6. Try any tab operation (navigate, read_page, form_input, javascript_tool)

Expected Behavior

Tab operations should work on tabs that appear in tabs_context_mcp.

Actual Behavior

All tab operations fail immediately with "No tab available" error, even though the tab is listed in context.

Debug log shows:

MCP server "claude-in-chrome": Tool 'navigate' failed after 0s: No tab available
TelemetrySafeError: TelemetrySafeError: No tab available

Additional Context

This was discovered while troubleshooting why the Chrome extension wasn't connecting to Claude Code. The issue may be related to:

  1. Two native messaging host configurations existing:
  • com.anthropic.claude_browser_extension (Claude desktop app)
  • com.anthropic.claude_code_browser_extension (Claude Code)
  1. The Chrome extension appears to connect to the Claude desktop app's native host by default, not Claude Code's
  1. Even after redirecting the native messaging manifest to point to Claude Code's native host (~/.claude/chrome/chrome-native-host), the tab operations still failed
  1. The MCP server (--claude-in-chrome-mcp) and native host (--chrome-native-host) are separate processes that may not be communicating properly

Process State When Bug Occurs

claude --chrome (main process)
/path/to/claude/versions/2.1.19 --claude-in-chrome-mcp (MCP server)
/path/to/claude/versions/2.1.19 --chrome-native-host (native messaging host)

The native host started after the MCP server, which may indicate a synchronization issue.

View original on GitHub ↗

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