Visual-diff & change-detection tools that catch agentic UI drift for coding agents.
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y @corralimited/snapdiff-mcp
MCP client config
{
"mcpServers": {
"snapdiff-mcp": {
"command": "npx",
"args": [
"-y",
"@corralimited/snapdiff-mcp"
]
}
}
}Standalone MCP server for SnapDiff. Exposes four tools to local agents:
Hits the public SnapDiff REST API. Bring your own API key.
Get an API key at https://snapdiff.ai/dashboard, then drop the snippet for your agent below.
claude mcp add snapdiff -e SNAPDIFF_API_KEY=sk_live_... -- npx -y @corralimited/snapdiff-mcp
Or edit ~/.claude/settings.json:
{
"mcpServers": {
"snapdiff": {
"command": "npx",
"args": ["-y", "@corralimited/snapdiff-mcp"],
"env": { "SNAPDIFF_API_KEY": "sk_live_..." }
}
}
}
~/.cursor/mcp.json (or project-level .cursor/mcp.json):
{
"mcpServers": {
"snapdiff": {
"command": "npx",
"args": ["-y", "@corralimited/snapdiff-mcp"],
"env": { "SNAPDIFF_API_KEY": "sk_live_..." }
}
}
}
Cline > MCP Servers > Edit Config:
{
"mcpServers": {
"snapdiff": {
"command": "npx",
"args": ["-y", "@corralimited/snapdiff-mcp"],
"env": { "SNAPDIFF_API_KEY": "sk_live_..." }
}
}
}
~/.config/zed/settings.json:
{
"context_servers": {
"snapdiff": {
"command": {
"path": "npx",
"args": ["-y", "@corralimited/snapdiff-mcp"],
"env": { "SNAPDIFF_API_KEY": "sk_live_..." }
}
}
}
}
~/.continue/config.yaml:
mcpServers:
- name: snapdiff
command: npx
args: ["-y", "@corralimited/snapdiff-mcp"]
env:
SNAPDIFF_API_KEY: sk_live_...
command: npx
args: -y @corralimited/snapdiff-mcp
env: SNAPDIFF_API_KEY=sk_live_...
| Name | Purpose |
|---|---|
snapdiff_verify_ui_change | Checks whether a visual change matches the agent's stated intent. Returns verdict (pass / expected_change_detected / unexpected_regression / no_change_detected / needs_human_review) and a next_action. Requires a project + baseline. Use this in the verification loop. |
snapdiff_compare_pages | Raw visual diff between two URLs, or a URL vs. a stored project baseline. Use for ad-hoc diffs that don't fit the verify-ui-change verdict shape. |
snapdiff_capture_screenshot | Single screenshot of a URL. |
snapdiff_html_to_image | Render HTML/CSS to an image (OG cards, social images, email headers). |
Schemas live in src/tools/ and are exported from @corralimited/snapdiff-mcp/tools.
The hosted SnapDiff backend imports the same schemas so its in-process /mcp endpoint and this
standalone stdio server expose an identical surface — agents see the same tool names, descriptions,
and parameters whether they connect to https://api.snapdiff.ai/mcp or run this server locally.
This package speaks stdio only — your editor spawns it as a subprocess, and the Playwright-backed localhost tools run on your machine, where your dev server actually is. It does not open a port.
If you need an HTTP endpoint, use the hosted one at https://mcp.snapdiff.ai/mcp,
which authenticates every request with your API key and exposes the same tool surface.
| Env var | Required | Notes |
|---|---|---|
SNAPDIFF_API_KEY | yes | Get one at https://snapdiff.ai/dashboard |
SNAPDIFF_API_URL | no | Override the API base. Defaults to https://api.snapdiff.ai/v1. |
There are no CLI flags beyond --help.
MIT — see LICENSE.