Claude in Chrome: site-approval prompt never fires for Claude Code MCP channel — every site permanently blocked (side-panel approvals don't propagate)

Status Open
Reported on v2.1.263
Maintainer reply None cached
Activity 2 comments · opened Sep 7, 2026

Summary

Every mcp__claude-in-chrome__* call that touches a page fails with This site is blocked by your site permissions for every site (including google.com), and no site-approval prompt ever appears — not in the terminal (any permission mode), not in the browser. The extension's settings page shows "Your approved sites: No sites have been approved yet" with no way to add sites manually. Approving a site via the claude.ai side panel does not propagate to the Claude Code MCP channel.

Environment

  • Claude Code 2.1.263, Linux (Ubuntu 26.04, kernel 7.0.0-31), Wayland
  • Google Chrome 152.0.7977.82
  • Claude in Chrome extension v1.0.90 (bug reproduced again after full uninstall + fresh reinstall)
  • Extension paired correctly (chromeExtension.pairedDeviceId in ~/.claude.json matches list_connected_browsers)

What we ruled out (all attempted, in order)

  1. Chrome-level Site access set to "On all sites" — no change.
  2. Extension settings reviewed — "Your approved sites" empty, no add UI.
  3. Native-host conflict found and fixed: Claude Desktop's com.anthropic.claude_browser_extension.json also listed this extension's ID in allowed_origins; the extension had bound to the Desktop host with no Desktop app running (hung pipe — side panel and MCP both dead, side panel reporting "every browser tool call is failing"). Removed the extension ID from the Desktop manifest; after extension reload it correctly bound to claude --chrome-native-host. This fixed the hung-pipe failures but not the site-permission block. (Suggestion: the extension should not bind to a native host whose app isn't running, and two Anthropic products claiming the same extension ID deserves a doc note.)
  4. /chrome → Reconnect extension — connects fine; block persists.
  5. Permission modes: bypass/auto, default, manual — no approval prompt fires in any mode; the error returns instantly.
  6. Full extension uninstall, Chrome restart (verified real restart, not background-mode), fresh install from claude.ai/chrome — clean install binds to the correct native host immediately, same block.
  7. User approved the site in the side panel (claude.ai surface, same email) — side panel works, but the MCP channel still returns the same error, so the two surfaces appear to keep separate site-permission stores with no prompt path on the Claude Code side.

Expected

First state-changing browser action triggers a site-approval prompt (terminal or extension), and approvals are visible/manageable in the extension's "approved sites" list.

Actual

No prompt ever fires on the Claude Code channel; every site is permanently blocked; the approved-sites list is unpopulatable from the user's side.

View original on GitHub ↗

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