[BUG] Claude chrome extension cannot execute javascript_tool, computer actions, or screenshots on pages with about:blank iframes
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?
When a web application uses about:blank sub-frames (e.g., about:blank?viewId=logout), the following MCP tools fail with a permissions error: - javascript_tool - computer (screenshot, left_click, key, type)
Tools that DO work on the same page:
- read_page (full DOM/accessibility tree traversal)
- find (element search)
- form_input (can set values on elements)
- scroll_to (can scroll to elements by ref)
- navigate
- read_console_messages
- read_network_requests
This indicates the working tools use CDP (Chrome DevTools Protocol) while the broken tools use content script injection, which Chrome blocks when any iframe has an about:blank origin not listed in the extension manifest.
Suggested fix:
- Add about:blank to the extension's manifest host_permissions
- OR: catch the permission error on inaccessible frames and continue operating on accessible frames
- OR: add a frame parameter to javascript_tool and computer to target a specific frame context
Environment:
- Windows 11 Enterprise 10.0.26200
- Chrome (latest)
- Claude Code with Claude in Chrome MCP
What Should Happen?
Expected behavior:
All tools should work, or at minimum javascript_tool and computer actions should target the main frame and ignore inaccessible about:blank sub-frames.
Error Messages/Logs
Error message:
Cannot access contents of url "about:blank?viewId=logout".
Extension manifest must request permission to access this host.
Steps to Reproduce
Steps to reproduce:
- Navigate to any web application that includes about:blank iframes in its frame structure (common in enterprise apps with multi-frame layouts)
- Try javascript_tool to run document.title — fails
- Try computer(action="screenshot") — fails
- Try computer(action="left_click", ref="ref_X") — fails
- Try read_page — succeeds, full DOM visible
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.62 (Claude Code)
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
VS Code integrated terminal
Additional Information
_No response_
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗