claude-code - 💡(How to fix) Fix [BUG] mcp__claude-in-chrome__* tools are advertised but not callable after upgrade to Claude 4.8

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Error Messages/Logs

RAW_BUFFERClick to expand / collapse

Preflight Checklist

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

What's Wrong?

Summary The Claude-in-Chrome browser-automation tools (mcp__claude-in-chrome__*) are injected into the model's instructions but never registered as callable tools. The model is told to use them, but they don't exist in the tool registry, so every invocation path is a dead end.

What's broken The system prompt includes the full browser_instruction block that tells the model to call mcp__claude-in-chrome__tabs_context_mcp first, then tabs_create_mcp, take_screenshot, read_console_messages, javascript_tool, etc. None of those tool schemas are actually exposed. They are not in the active tool list, not in the deferred-tools list, and a tool-registry search returns "No matching deferred tools found" for tabs_context_mcp / tabs_create_mcp and the rest. Net effect: the model literally cannot call any mcp__claude-in-chrome__* tool — there is no schema to invoke. Browser automation via the extension is fully non-functional. Corroborating signal The injected tab context shows tabId="undefined" (<browser tabGroupId="..." tabId="undefined">), suggesting the extension handshake / tab enumeration is not completing. Scope (per reporter) Started after upgrading to Claude 4.8. Reproduces on macOS, Linux, and Windows. Reproduces across all surfaces: Claude Code CLI, the desktop App, the VS Code extension, and Cursor.

What Should Happen?

Expected vs. actual Expected: mcp__claude-in-chrome__* tool schemas are registered and callable, matching the injected browser instructions. Actual: instructions reference the tools, but the tools are absent from the registry → uncallable.

Error Messages/Logs

Steps to Reproduce

Here's a "Steps to Reproduce" section you can paste in:

Steps to Reproduce Prerequisites Claude updated to 4.8 (Opus 4.8). The Claude in Chrome extension installed and connected (the browser-automation feature that exposes mcp__claude-in-chrome__* tools). Any one of these surfaces: Claude Code CLI, Claude desktop App, VS Code extension, or Cursor. Steps Open any of the supported surfaces (Claude Code CLI / App / VS Code / Cursor) with the Claude-in-Chrome browser integration enabled. Confirm the session injects the browser instructions — i.e. the assistant is told to start by calling mcp__claude-in-chrome__tabs_context_mcp. In a new conversation, ask the assistant to do anything that requires the browser, e.g.: "Open a new tab to https://example.com and take a screenshot."

Observe that the assistant attempts to use the mcp__claude-in-chrome__* tools (e.g. tabs_context_mcp, tabs_create_mcp, take_screenshot). Actual Result The mcp__claude-in-chrome__* tools are not present in the tool registry. Searching the tool list for tabs_context_mcp / tabs_create_mcp / take_screenshot returns "No matching deferred tools found." The tools are referenced in the injected instructions but have no callable schema, so the assistant cannot invoke any of them — browser automation via the extension fails completely. Corroborating signal: the injected tab context shows tabId="undefined" (<browser tabGroupId="..." tabId="undefined">), indicating the extension's tab handshake did not complete. Expected Result The mcp__claude-in-chrome__* tool schemas are registered and callable, matching the injected browser instructions, and the assistant can enumerate tabs, open a tab, navigate, and screenshot. Environment / Scope Trigger: began immediately after upgrading to Claude 4.8. OS: reproduces on macOS, Linux, and Windows. Surfaces: reproduces in Claude Code CLI, desktop App, VS Code, and Cursor. Minimal verification (no code required) This bug needs no project files or code to reproduce — it's a tool-registration regression. To verify quickly in any session:

Ask the assistant: "List the mcp__claude-in-chrome__* tools you can call." The assistant will report that none are available, while confirming the browser instructions were injected.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

2.1.120

Claude Code Version

2.1.156

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

VS Code integrated terminal

Additional Information

No response

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix [BUG] mcp__claude-in-chrome__* tools are advertised but not callable after upgrade to Claude 4.8