computer-use and Chrome MCPs fail every session with >2000px screenshots on retina displays

Resolved 💬 3 comments Opened Apr 18, 2026 by Leedecker47 Closed Apr 22, 2026

Summary

Both mcp__computer-use__screenshot and every screenshot-producing tool in the Claude-in-Chrome MCP (preview_screenshot, screenshot, etc.) fail reliably when the host display is a retina Mac. The screenshot is captured at native pixel resolution and rejected because it exceeds a 2000px per-dimension cap somewhere in the upload/API path. This happens in every single session — not intermittent.

Environment

  • Hardware: 16" MacBook Pro, native panel 3456×2234
  • macOS: Darwin 25.3.0
  • Claude Code: running Opus 4.7 (1M context)
  • Display setting: "Default" scaling (HiDPI 1728×1117 logical → 3456×2234 backing pixels)

Repro

  1. Open any Claude Code session on a retina Mac at default/more-space scaling.
  2. Call any screenshot-producing tool from mcp__computer-use__* or mcp__Claude_in_Chrome__*.
  3. Tool returns an error indicating the image exceeds 2000px on a dimension.

Expected

The MCP should auto-downsample the captured image before upload so it fits the image-API dimension limits, transparently to the user. The user should not have to re-scale their macOS display every session.

Actual

Tool fails. The only user-side workarounds are:

  • Switch macOS Displays to "Larger Text" scaling — still produces ~2048×1280 screenshots on 16" MBP, so not guaranteed to pass.
  • Enable "Show all resolutions" and pick a non-HiDPI resolution like 1680×1050 — works but makes the whole UI fuzzy, which is unreasonable to ask for.
  • Avoid screenshot tools entirely and rely on DOM-based browser tools — defeats the purpose of computer-use.

Impact

  • Affects every retina Mac user (i.e., most macOS users on modern hardware).
  • Every session that needs a screenshot hits this.
  • Forces either UI degradation or skipping computer-use entirely.

Suggested fix

In the MCP server for computer-use and Claude_in_Chrome, after capturing the screenshot and before uploading, check image dimensions. If either dimension > 2000px, downsample proportionally so the longer edge is ≤ 2000px. This is a 5-line change per MCP using Pillow/sharp/etc.

Ideally, expose a user-configurable max-dimension via MCP server env var (e.g. CLAUDE_MCP_SCREENSHOT_MAX_PX=1600) so users on higher-DPI displays can tune it.

Severity

Blocker for computer-use reliability on retina Macs. I'm filing this because it silently eats 5–10 seconds of every session where I need visual verification.

View original on GitHub ↗

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