Skip to content
Development
Command

/snapshots

```bash

BOOST
From plugin
toolkit
90942 skills1 agent42 commands2 MCP
Install
> /plugin marketplace add getsentry/toolkit
> /plugin install sentry-mcp@sentry-mcp

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/snapshots

Context preview

What this command does when you run it.

```bash

Command definition

snapshots.md

Examples

# Upload a folder of screenshots as a snapshot for an app
sentry snapshots upload ./screenshots --app-id com.example.app

# Upload only a subset of images (removals/renames not inferred on PRs)
sentry snapshots upload ./screenshots --app-id my-app --selective

# Only flag images that differ by more than 1%
sentry snapshots upload ./screenshots --app-id my-app --diff-threshold 0.01

# Compare two directories of snapshot images locally
sentry snapshots diff ./baseline ./head

# Fail (non-zero exit) if any images changed, with a custom threshold
sentry snapshots diff ./baseline ./head --fail-on-diff --threshold 0.02

# Download a specific baseline snapshot by ID
sentry snapshots download --snapshot-id 1234567890

# Download the latest baseline for an app, filtered by branch
sentry snapshots download --app-id my-app --branch main

# Extract images to a specific directory
sentry snapshots download --app-id my-app --output ./baseline/

Important Notes

  • `snapshots upload` scans a folder for PNG/JPEG images (skipping hidden files),

uploads each to Sentry's object store — images already present are skipped by content hash — and creates a snapshot. **Sentry SaaS only.** A companion `<image>.json` sidecar adds per-image metadata; `--all-image-file-names` (or `--all-image-file-names-file`) lists the full suite for selective uploads. Each image must be at most 40,000,000 pixels. Git metadata is auto-collected in CI (see `build upload`); a `--pr-number` requires a resolvable base SHA.

  • `snapshots diff` compares two local image directories (PNG/JPEG) perceptually

— anti-aliasing aware, with a per-pixel `--threshold` (0.0–1.0) — and writes a PNG diff mask per changed image. It makes **no network requests**. Use `--fail-on-diff` to exit non-zero when any images changed/added/removed, and `--selective` to treat images missing from head as skipped rather than removed.

  • `snapshots download` fetches baseline snapshot images from Sentry's preprod

system and extracts them to a local directory. **Sentry SaaS only.**

  • Provide exactly one of `--snapshot-id` (a direct artifact ID) or `--app-id`

(resolves the latest baseline). `--branch` only applies with `--app-id`.

  • With org auth tokens, resolving by `--app-id` requires `--project` (a project

ID or slug).

  • If the downloadable archive has not been built yet, the command triggers a

build and waits for it (up to 5 minutes).

  • Images are extracted to `./snapshots-base/` by default; override with

`--output`.

  • The organization is resolved from `--org`, `SENTRY_ORG`, config defaults, or a

detected DSN.

Read more
Ships withtoolkit

Sentry's MCP service is primarily designed for human-in-the-loop coding agents. Our tool selection and priorities are focused on developer workflows and debugging use cases, rather than providing a general-purpose MCP server for all Sentry functionality.

Get the whole plugin

Other commands on toolkit.