anthropics / anthropics/claude-code

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

Offen
#92,571 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area:chrome area:mcp bug platform:linux
Vorherrschende Sprache
Python
Sterne
145k
Forks
23.1k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

## 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.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Start with the `/chrome` reconnect flow and `list_connected_browsers`, then trace the MCP site's permission check across the Claude Code channel and the browser extension. Use `~/.claude.json` and `com.anthropic.claude_browser_extension.json` to reproduce the pairing and native-host setup. Done means a first state-changing action prompts for approval and an approval appears in the extension's approved-sites list and works through MCP.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
api, cli, tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.