OpenScreenShot

Registre officiel Autres

Capture website screenshots (viewport or full page) with local Chrome, or on OpenScreenShot Cloud.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http openscreenshot 'https://cloud.openscreenshot.app/mcp' --header 'Authorization: <Bearer osc_live_… API key from openscreenshot auth login or the Cloud dashboard>'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "openscreenshot": {
            "type": "http",
            "url": "https://cloud.openscreenshot.app/mcp",
            "headers": {
                "Authorization": "<Bearer osc_live_… API key from openscreenshot auth login or the Cloud dashboard>"
            }
        }
    }
}
NPM package openscreenshot
Claude Code
claude mcp add openscreenshot -e 'CHROME_PATH=<CHROME_PATH>' -e 'OPENSCREENSHOT_API_KEY=<your openscreenshot_api_key>' -e 'OPENSCREENSHOT_CLOUD_URL=<OPENSCREENSHOT_CLOUD_URL>' -- npx -y openscreenshot@2.5.2
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "openscreenshot": {
            "command": "npx",
            "args": [
                "-y",
                "openscreenshot@2.5.2"
            ],
            "env": {
                "CHROME_PATH": "<CHROME_PATH>",
                "OPENSCREENSHOT_API_KEY": "<your openscreenshot_api_key>",
                "OPENSCREENSHOT_CLOUD_URL": "<OPENSCREENSHOT_CLOUD_URL>"
            }
        }
    }
}

Variables d'environnement

  • CHROME_PATH Path to a Chrome, Chromium, or Edge executable. Leave unset to auto-detect.
  • OPENSCREENSHOT_API_KEY secret API key for OpenScreenShot Cloud, used with cloud: true. Not needed for local captures.
  • OPENSCREENSHOT_CLOUD_URL OpenScreenShot Cloud base URL for cloud: true. Defaults to https://cloud.openscreenshot.app.

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. OpenScreenShot
  2. Capture → edit → share
  3. Install
  4. Private by design
  5. Development
  6. CLI & MCP
  7. Contributing
  8. License

OpenScreenShot

The whole page. One click. Yours to keep.

Open-source full-page screenshot extension for Chrome and Firefox. Capture, annotate, blur, export as PNG, JPEG, WebP, or PDF, and record a tab. Everything runs on your device. No account.

Add to Chrome

Chrome · Edge · Brave · Arc · Chromium

Add to Firefox

Firefox for desktop · 140+

MCP

Local server · client setup required

CLI

Terminal · scripts · CI/CD

Website · Docs · Roadmap · Report a bug

Chrome preview. Screenshot capture and editing are also available in Firefox.

Capture the whole web page, crop it, mark it up, blur what is private, and save it as an image or a PDF. Every step runs in your browser: nothing is uploaded, and there is no account.

Capture → edit → share

  • One click, whole page — the toolbar icon captures the entire scrolling page, even behind sticky headers and inside nested scrollers (a settings toggle restores the mode picker)
  • Visible area, region, and element capture from the popup, the right-click menu, or keyboard shortcuts, with an optional 3, 5, or 10 second delay
  • Annotate with arrows, shapes, text, numbered steps, spotlight, highlighter, and crop, with full undo
  • Blur or redact secrets before you share: soft blur, mosaic, or an opaque fill
  • Record the tab in Chrome with auto-zoom at your clicks, mic and webcam, and trim. Pick the part of the tab to record and check your camera first; the controls stay out of the video
  • Export as PNG, JPEG, WebP, or multi-page PDF, or copy straight to the clipboard
  • Script it from a terminal, CI, or an AI agent with the CLI and MCP server

The full tour, every shortcut, and the settings reference live in the docs.

Guides

Install

Chrome & ChromiumFirefox
InstallChrome Web StoreFirefox Add-ons
Full-page, visible, region & element capture✓✓
Annotations, redaction & local history✓✓
Image, PDF & clipboard export✓✓
Screen recordingChromeNot available

Firefox requires desktop version 140 or later. The Chrome extension also works in Edge, Brave, Arc, and other Chromium browsers. Screen-wide color picking and floating capture windows appear only when the browser supports them.

Your first screenshot
  1. Install from your browser’s store and pin the extension to the toolbar.
  2. Click the icon to capture the whole page. Right-click for visible-area and region capture.
  3. Edit and share — annotate, redact, copy, or save an image or PDF.

Prefer a capture menu on every click? Turn off Express mode in settings. For alternatives and a sourced feature comparison, see How it compares.

Element capture

Choose Capture element from the page or extension right-click menu, or from the popup when Express mode is off. Hover over a card, image, chart, or table to highlight it. Use ↑ / ↓ to select a larger or smaller area, or ← / → to move between elements without a mouse. Click or press Enter to capture; Esc cancels.

The capture follows your existing Editor, Clipboard, or Download setting. The element must be fully visible: scroll it into view, or use the Capture full page fallback offered for clipped elements. Content inside an iframe is captured as part of the iframe's visible rectangle. No new permissions are needed.

Private by design

host_permissions is empty: activeTab grants access on your click, and the extension does not have standing access to every website. Captures, recordings, and edits stay in local browser storage until you export or delete them. Chrome can optionally request broader access for recording across sites; Firefox does not request recording permissions. Full policy: PRIVACY.md.

Every permission, line by line

PermissionWhy
activeTabAccess the current tab — only when you click the extension, use a shortcut, or pick a capture from the right-click menu
scriptingInject on-demand page functions for scroll-and-stitch, region selection, the quick-mode clipboard write, and the recording's click tracker
storage (+ unlimitedStorage)Settings, the last region rect, editing drafts, a parked Record click, and stashing large full-page PNGs and recording chunks for the editor
downloadsSave exports, quick-mode captures, and recording exports to your Downloads folder
contextMenusAdd one capture submenu to the page right-click menu
clipboardWriteCopy a screenshot from the editor or from quick mode; it never reads the clipboard
offscreen (Chrome)Run the recording engine in a hidden document — MediaRecorder and the IndexedDB writes need a page context a service worker doesn't have
tabCapture (Chrome, optional)Requested once, at your first recording; every recording after that starts in one click
<all_urls> (Chrome, optional host)Only if you turn on "Record across sites" — keeps click tracking alive when a recording navigates to a new origin

Development

TypeScript (strict) + Preact, bundled by Vite + @crxjs/vite-plugin. One runtime dependency (Preact); unit tests with Vitest. Node.js 22.19+ and pnpm 10.33.0.

pnpm install --frozen-lockfile
pnpm run icons
ChromeFirefox
Developpnpm run devpnpm run dev:firefox
Buildpnpm run buildpnpm run build:firefox
Packagepnpm run packagepnpm run package:firefox
Load locallychrome://extensions → Developer mode → Load unpacked → dist/about:debugging → This Firefox → Load Temporary Add-on → dist-firefox/manifest.json
pnpm typecheck
pnpm lint
pnpm test
pnpm format:check
pnpm lint:firefox   # validate dist-firefox/ after building

The Firefox release guide covers reviewer source archives, verification, and automated Mozilla submissions. Tagged releases have separate Chrome and Firefox workflows; store review determines when each update becomes available.

For the website, use pnpm site:dev; a push to main deploys it. See CONTRIBUTING.md for the contribution workflow.

Project structure

openscreenshot/
├── manifest.json            # MV3 manifest (crxjs entry)
├── public/                  # icons + i18n messages
├── src/
│   ├── background/          # service worker (capture + recording coordinator)
│   ├── content/             # on-demand capture funcs (scroll, region, recording click tracker)
│   ├── control/             # recording control tab: area, camera preview, Start/Stop (Preact)
│   ├── editor/              # annotation editor + export (Preact, own tab)
│   ├── offscreen/           # recording engine: MediaRecorder + IndexedDB chunks
│   ├── popup/               # popup UI (Preact)
│   ├── recorder/            # recording editor: timeline, zoom, trim, export (Preact, own tab)
│   └── shared/              # design tokens, messaging, storage, types, utils
├── mcp/                     # optional local CLI + MCP server
├── site/                    # Astro website + localized content
├── site-dist/               # generated site build, served by site-worker.js
├── tests/unit/              # unit tests (Vitest)
└── scripts/                 # icon + screenshot pipelines

CLI & MCP

openscreenshot (npm) is a separate, optional tool that drives the Chrome already on your machine. It is local by default and needs no account. Node.js 22.12 or newer and Chrome, Chromium, or Edge are required. The package README has every option.

Optional: openscreenshot auth login, then --cloud on the CLI or cloud: true on the MCP tool, renders the page on OpenScreenShot Cloud, a hosted screenshot API with a free plan. In Cloud mode, the URL and the options go to Cloud.

CLI
npx openscreenshot shot https://example.com --out shot.png --full

Cover secrets before the pixels are written: --redact "<css selector>", --redact-pattern email,phone,secret, and --redact-rect x,y,w,h put black boxes over their targets, and the capture fails rather than writes an image if a target moves.

MCP

Add this server entry to your MCP client’s configuration, then call capture_screenshot with { "url": "https://example.com", "fullPage": true }:

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

Claude Code: claude mcp add openscreenshot -- npx -y openscreenshot.

The server runs locally over stdio. Your client must support launching a local MCP process. For clients that accept only remote MCP URLs, OpenScreenShot Cloud serves https://cloud.openscreenshot.app/mcp (Streamable HTTP, Authorization: Bearer <api-key>). The tool returns the PNG to the client, which may send it to a hosted model: use the redact input for data that must not leave the device.

Built for the terminal-heavy parts of the job:

  • DevOps — snapshot dashboards, status pages, and admin UIs straight into incident reports, runbooks, and postmortems, from cron or a chat command
  • CI/CD — capture pages in your pipeline for docs, release notes, and visual diffs on every deploy: one command, no hosted service needed

Contributing

Desktop and web apps are also in progress. Follow their development on the roadmap.

See CONTRIBUTING.md and the roadmap. If OpenScreenShot is useful to you, you can buy me a coffee.

License

MIT © OpenScreenShot @PGHQdev

Questions fréquentes

Qu'est-ce que OpenScreenShot ?

Capture website screenshots (viewport or full page) with local Chrome, or on OpenScreenShot Cloud.

Comment installer OpenScreenShot ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http openscreenshot 'https://cloud.openscreenshot.app/mcp' --header 'Authorization: <Bearer osc_live_… API key from openscreenshot auth login or the Cloud dashboard>'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour OpenScreenShot ?

Oui. Il attend OPENSCREENSHOT_API_KEY, Authorization, à renseigner dans sa configuration.

OpenScreenShot est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient OpenScreenShot ?

Il est publié par PGHQdev. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.