Screenshot MCP Server

screenshot-mcp binary for linux x64

Local serverstdio

What is the Screenshot MCP server?

screenshot-mcp binary for linux x64. The screenshot mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 2 defined tools rather than through you.

What it actually does

Capture full-page and viewport screenshots of any URL via Chrome DevTools Protocol — single static binary, no runtime required.

Its toolset

Everything the assistant can do here goes through one of these:

  • Cursor — Chrome is auto-downloaded on first use if not found. To override: "env": { "CHROME_PATH": "/path/to/chrome" }
  • capture_page — Captures a screenshot of a web page, waiting for JavaScript to finish rendering

Adding it to your client

Installation goes through your MCP client rather than a global install: point it at @kembec/screenshot-mcp on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.

Configuration

You will need one environment variable: CHROME_PATH. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

No manual setup required. On first use, screenshot-mcp automatically downloads a pinned Chromium build to your OS cache directory (~/.cache/screenshot-mcp/ on Linux, ~/Library/Caches/screenshot-mcp/ on macOS) if no Chrome is detected. If you already have Chrome installed, it is used directly — no download occurs. You can also set CHROME_PATH to point to any Chromium-compatible binary.

When to reach for it

Plenty of browser automation servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Screenshot's toolset — Cursor, capture_page — is a fair guide to whether it matches your workflow. It is maintained by kembec; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the screenshot mcp server does with a few real requests.

Available tools

ToolWhat it does
CursorChrome is auto-downloaded on first use if not found. To override: "env": { "CHROME_PATH": "/path/to/chrome" }.
capture_pageCaptures a screenshot of a web page, waiting for JavaScript to finish rendering.

How to install the Screenshot MCP server

{
  "mcpServers": {
    "screenshot-2": {
      "command": "npx",
      "args": ["-y", "@kembec/screenshot-mcp"],
      "env": {
        "CHROME_PATH": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

No manual setup required. On first use, screenshot-mcp automatically downloads a pinned Chromium build to your OS cache directory (~/.cache/screenshot-mcp/ on Linux, ~/Library/Caches/screenshot-mcp/ on macOS) if no Chrome is detected. If you already have Chrome installed, it is used directly — no download occurs. You can also set CHROME_PATH to point to any Chromium-compatible binary.

VariableDescriptionRequired
CHROME_PATHFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use Screenshot to Cursor.
  • Use Screenshot to capture page.

Frequently asked questions

It connects Screenshot to MCP-compatible AI assistants such as Claude and Cursor, exposing 2 tools (Cursor, capture_page) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Screenshot directly.