OpenScreenShot logo

OpenScreenShot

by PGHQdev

Capture local Chrome screenshots through MCP or CLI, with full-page output, configurable viewports, and pre-capture redaction.

Install OpenScreenShot

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "pghqdev-openscreenshot": {
      "command": "npx",
      "args": [
        "-y",
        "openscreenshot"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command started, but didn't respond the way we expected when we tried to talk to it.

npx -y openscreenshot

initialize succeeded but no response to tools/list.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked Today.

Overview

PGHQdev/OpenScreenShot drives Chrome, Chromium, or Microsoft Edge on the local machine to capture website screenshots through MCP or its CLI. The `capture_screenshot` tool returns PNG image content and supports viewport sizing, full-page captures, CSS-selector redaction, text-pattern redaction, and coordinate-based rectangles. The CLI can write PNG files or stdout output for terminal and CI workflows. Use it when an agent needs visual page captures without sending the browser session to a hosted screenshot service.

Use cases

  • Capture full-page website references for an AI agent
  • Check responsive layouts at specified viewport sizes
  • Redact account details before returning screenshots
  • Pipe PNG captures into CI or image-processing workflows

Key features

  • Local headless Chrome, Chromium, or Edge capture
  • MCP screenshot tool returning PNG image content
  • Viewport and full-page capture modes
  • Selector, text-pattern, and rectangle redaction
  • CLI output to files or stdout
  • Optional OpenScreenShot Cloud rendering

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

8/8 checks healthy over the last 15d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 1d ago via OSV.dev · openscreenshot (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars92Stargazers on the source repository.
npm downloads1.2kPackage downloads in the last 30 days.
Last commit16d agoMost recent push to the default branch.
Install checkInconclusiveStarted but did not complete the MCP handshake in our test.

How OpenScreenShot works

What PGHQdev/OpenScreenShot MCP server does

PGHQdev/OpenScreenShot exposes local website capture through the Model Context Protocol. It launches a headless browser available on the machine, loads a full URL, and returns the result as PNG image content to the MCP client. Captures can cover only the configured viewport or the complete scrollable page.

The server is accompanied by an openscreenshot command-line interface. The CLI writes local PNG files by default and can send image bytes to stdout, which makes it suitable for shell pipelines and CI jobs. It also supports viewport dimensions, full-page mode, and the same three redaction approaches available through MCP.

How it works

An MCP client starts the package as a local process over standard input and output. Running openscreenshot serve explicitly starts that server mode; invoking openscreenshot without arguments on piped stdin does the same. There is no MCP URL to configure for the local setup.

The primary MCP tool is capture_screenshot. Its required url must be a complete page address, such as an https:// URL. fullPage controls whole-page capture, while width and height set the viewport within the supported ranges of 200–3840 pixels wide and 200–2160 pixels high.

Redaction is applied before the image is produced. CSS selectors cover matching elements and their children, named patterns find email addresses, phone-like numbers, or secrets, and rectangles cover pixel coordinates in the output image. The resulting MCP response contains image/png content rather than a named file.

Setup and configuration

The runtime requires Node.js 22.12 or newer and an installed Google Chrome, Chromium, or Microsoft Edge. The package does not download or bundle a browser, so the browser executable must already be available on the machine.

Clients using an mcpServers configuration can launch it with npx -y openscreenshot:

config.json
{
  "mcpServers": {
    "openscreenshot": {
      "command": "npx",
      "args": ["-y", "openscreenshot"]
    }
  }
}

Claude Code can register the same command with claude mcp add openscreenshot -- npx -y openscreenshot. After changing configuration, reload or restart the client, and ensure that npx or the selected package runner is on its PATH.

Tools and capabilities

  • Capture viewport or full-page website screenshots.
  • Set desktop-style viewport width and height.
  • Redact elements with CSS selectors.
  • Redact email, phone, or secret text patterns, including form values.
  • Cover output coordinates with rectangular black boxes.
  • Return PNG image content through MCP.
  • Write PNG files or stdout bytes through the CLI.
  • Optionally render through OpenScreenShot Cloud from the CLI or MCP flow when configured for cloud use.

Limitations and notes

The MCP tool does not save a named file; use the CLI when a filesystem path is required. Local output is PNG, and choosing a .jpg or .pdf filename does not convert it. The CLI can request other formats only with the cloud option.

A narrow viewport changes layout width but retains a desktop user agent; it does not emulate mobile touch behavior or device pixel ratio. Selector redaction fails when a selector is invalid or matches no element. A successful CLI exit code confirms that a file was written, not that the page rendered correctly, so captures should be checked for loading states or error pages.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about OpenScreenShot

PGHQdev/OpenScreenShot is an MCP server that connects an AI client to Chrome, Chromium, or Edge running locally. Its main tool, capture_screenshot, captures viewport or full-page PNGs with CSS-selector, email, phone, secret, and rectangle redaction. A companion CLI supports terminal and CI workflows.

Install or run it with Node.js 22.12 or newer and `npx -y openscreenshot`; also install Chrome, Chromium, or Microsoft Edge locally. Add that command under an `mcpServers` entry, then reload the MCP client.

Yes, Cursor can launch it through an `mcpServers` configuration. Set the command to `npx` with the argument `-y openscreenshot`, save the configuration, and reload Cursor.

Use the `redact` input with `selectors`, `patterns`, or `rects`. Selectors cover matching elements, supported patterns target email, phone, or secret text, and rectangles cover specified output-image coordinates before the PNG is returned.

Use the CLI rather than the MCP tool, because the MCP response contains image content and does not write a named file. Run `openscreenshot shot <url> --out <file>` for a PNG, or use `--out -` to send PNG bytes to stdout.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewOpenScreenShot AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/pghqdev-openscreenshot?style=directory)](https://allmcps.com/mcp/pghqdev-openscreenshot)
HTML Embed
<a href="https://allmcps.com/mcp/pghqdev-openscreenshot"><img src="https://allmcps.com/api/badge/pghqdev-openscreenshot?style=directory" alt="OpenScreenShot on AllMCPs" /></a>