SnapVisor MCP

Review visual regression builds, approve or reject screenshot changes, and manage SnapVisor projects. Remote server with OAuth sign-in.

Hosted MCP Server

npx add-mcp 'https://mcp.snapvisor.io/'

Installs into Claude Code, Codex, Cursor and more

Documentation

Snapvisor

Snapvisor is a visual testing platform built on an open-source engine. Capture screenshots from your existing test suite, compare them with a baseline, and review changes on your pull requests.

Snapvisor is a visual regression testing platform built on a proven open-source visual-diff engine. It captures screenshots from the test suite you already run — Playwright, Cypress, Puppeteer, Storybook, or any tool that writes image files — compares them against an approved baseline, and posts the result as a status check on your pull request.

Why visual testing

Unit tests verify logic, not pixels. Visual regressions slip through green suites all the time:

  • Silent layout shifts — a CSS tweak two components away moves your checkout button below the fold.
  • Broken typography — a font fails to load and your headline wraps into the navbar.
  • Responsive regressions — perfect at 1440px, broken at 375px.

Snapvisor surfaces these as reviewable screenshot diffs instead of letting them ship.

Quickstart

Snapvisor uses the open-source @snapvisor SDKs (drop-in forks of the @argos-ci SDKs) to capture screenshots and upload them for comparison. Follow these steps to create your first build.

1. Create a project and grab your token

Sign in to the Snapvisor app, create a project, and copy its ARGOS_TOKEN from the project settings. This token authenticates uploads for that one project.

export ARGOS_TOKEN="<your project token>"

2. Install an SDK

Install the CLI, plus the adapter for your test runner. Snapvisor has official SDKs for Playwright, Cypress, Puppeteer, Storybook, and a framework-agnostic core.

npm install --save-dev @snapvisor/cli
npm install --save-dev @snapvisor/playwright

3. Capture and upload in CI

Run your tests so they write screenshots to a folder, then upload that folder. On a pull request, Snapvisor diffs the upload against the branch baseline and posts a status check with a link to review.

# after your tests have written screenshots to ./screenshots
npx @snapvisor/cli upload ./screenshots

How it works

  1. Capture — your CI uploads screenshots from the Storybook stories, Playwright, or Cypress specs you already run.
  2. Diff — each screenshot is compared against an eligible baseline with a perceptual engine that reduces anti-aliasing and rendering noise.
  3. Review — changes land as a status check on your pull request. Approve the intended ones, reject the regressions. Approved builds become eligible baselines for later comparisons.

Next steps

Getting started

Create a project, install an SDK, and upload your first build.

Baseline builds

How the reference build and base branch are resolved.

Review workflow

Baselines, approvals, monitoring mode, flaky-change handling, and summary checks.

CI integration

GitHub and GitLab status checks, tokenless auth, and parallel testing.

SDKs

Official JavaScript packages and a Python SDK and CLI.

MCP server

Let Claude Code, Cursor, or any MCP client read diffs and approve changes.

Access tokens

Project tokens for CI, personal access tokens for the API and MCP.

API reference

A versioned REST API described by an OpenAPI specification.

Support

Reach the team if you get stuck.

At a glance

  • Perceptual pixel diffing with anti-aliasing detection and adjustable thresholds
  • Approve/reject review workflow with per-branch baselines
  • GitHub and GitLab pull-request status checks
  • Parallel testing: shard large suites across machines and review them as one build
  • Slack and email notifications
  • A remote MCP server so AI agents can review your UI
  • Built on an inspectable open-source core; contact support for self-hosting access

[

Getting started

Create a Snapvisor project, set your project token, capture screenshots from your existing test suite, and upload your first build.

](https://snapvisor.io/docs/getting-started)