visualdiff
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
visualdiff
visualdiff wraps the SnapDiff visual-testing API: verify that a UI change matches what you meant to do, diff two pages (or a page against a stored baseline), capture a screenshot of any URL, and render raw HTML/CSS straight to an image. One binary serves a command-line interface and a stdio MCP server.
An API key is required. Set SNAPDIFF_API_KEY to a key from the
SnapDiff dashboard; calls fail before any request is made when it
is missing. The API base URL can be overridden with
SNAPDIFF_API_URL; when it is not set, calls go to
https://api.snapdiff.ai/v1.
Install
npx @reneturcios/visualdiff screenshot https://example.comOr run the container image:
docker run -i -e SNAPDIFF_API_KEY=sk_live_... ghcr.io/cloudcorprecords/visualdiffThe container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
Related MCP server: websight
CLI
export SNAPDIFF_API_KEY=sk_live_...
visualdiff verify myproj pricing https://staging.example.com/pricing "added a yearly billing toggle"
visualdiff compare https://staging.example.com --before https://www.example.com
visualdiff compare http://localhost:3000 --project myproj --page-name homepage
visualdiff screenshot https://example.com --width 800 --full-page
visualdiff html-to-image "<h1>Hello</h1>" --css "h1 { color: navy; }" --width 1200 --height 630
visualdiff --versionCommands print the upstream JSON payload. Exit codes: 0 on
success, 1 when a call fails (including a missing API key or an
upstream API error), 2 for usage errors.
MCP server
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
npx -y @reneturcios/visualdiff mcpMCP client configuration:
{
"mcpServers": {
"visualdiff": {
"command": "npx",
"args": ["-y", "@reneturcios/visualdiff", "mcp"],
"env": { "SNAPDIFF_API_KEY": "sk_live_..." }
}
}
}Tools
Tool | Input | What it returns |
|
| A verdict ( |
|
| A diff percentage plus a highlighted diff image. |
|
| A screenshot of the page. |
|
| The rendered image (OG cards, social images, email headers). |
Each tool is sent as a POST to a per-tool endpoint under the base URL with the API key as a Bearer token. Optional arguments that are not supplied are omitted from the request body entirely.
Development
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev # run the CLI from source via tsxLicense
MIT — see LICENSE.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Render-and-verify API: HTML/CSS to image or PDF, screenshot any URL, confirm the text rendered.
Capture screenshots, detect visual regressions between page versions, and analyze with AI.
Generate images and PDFs from HTML/CSS, live websites, and reusable templates.
Pixel-perfect webpage screenshots rendered in a real browser, full-page or viewport, via one POST.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables pixel-perfect image comparison and visual regression testing via tools to compare local images, screenshots, and URLs with detailed diff statistics.392 npm4MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to see, analyze, and visually verify web page changes through pixel-perfect diffing, theme extraction, layout analysis, and interactive element detection.8 npmMIT
- AlicenseNot gradedqualityDmaintenanceProvides tools to capture pixel-perfect website screenshots as images or PDF. Supports configurable viewport, full-page capture, CSS injection, and returns either viewable images or base64-encoded content.MIT
- AlicenseAqualityBmaintenanceEnables capturing HTTP/HTTPS webpages as images or PDFs using Screenshot Scout, with support for full-page, element, and device-specific captures, page interactions, and caching.1103 npmMIT