MCP server
The Snapvisor MCP server for visual regression testing
Snapvisor runs a remote Model Context Protocol server so an AI agent can review your UI. Connect once and the agent can list builds, read screenshot diffs, create reviews and comment, all through the same public API. This page is the short version: the endpoint, how to connect, what the agent can do, and where the machine-readable description lives.
Endpoint
The server is a stateless, streamable HTTP endpoint at the origin of the MCP host:
https://mcp.snapvisor.ioAuthentication is OAuth 2.1 (the default browser-consent flow, with a scoped token per client that you can revoke in the app) or a personal access token passed as a bearer header. Project tokens are upload-only and are not accepted; see the access tokens guide.
Connect an agent
Claude Code. One command adds the connector. The first request without a token triggers the OAuth sign-in in your browser:
claude mcp add --transport http snapvisor https://mcp.snapvisor.ioCursor and other MCP clients. Any client that speaks streamable HTTP can point at the endpoint, for example from an mcpServers config:
{
"mcpServers": {
"snapvisor": {
"url": "https://mcp.snapvisor.io"
}
}
}Claude connector directory. Add to Claude opens Snapvisor's listing, where you click Connect and approve the consent screen.
What an agent can do
The tool surface is derived from Snapvisor's public REST API, so it matches what the product can do. The operations fall into four groups:
- Builds and projects. List and inspect builds, projects, and their status across your organization.
- Screenshot diffs. Read the visual changes in any build: baseline, current, and the computed diff.
- Reviews and approvals. Create reviews to approve or reject visual changes without leaving the agent.
- Comments. Read and post build comments so humans and agents stay on the same thread.
To keep the agent's context small, the server exposes two tools instead of one per operation: search_tools returns the operations that match a query as TypeScript declarations, and execute_typescript runs a short program that calls them, so several calls cost one round trip. Every call enforces the same authentication, scopes and plan rules as a direct call.
To check a connection, run this through the second tool:
return await external_getMe({});It answers with the signed-in user and the accounts the connection can reach. MCP access depends on your plan: until it is included, only getMe answers. The plan requirements are in the guide.
Machine-readable discovery
Clients and crawlers do not have to read this page to find the server. Each document below describes it:
- MCP server card: /.well-known/mcp/server-card.json on this site, and the same card on the MCP host at mcp.snapvisor.io/.well-known/mcp/server-card.json. It names the endpoint, the streamable HTTP transport and the OAuth metadata location.
- OAuth protected resource metadata: mcp.snapvisor.io/.well-known/oauth-protected-resource, where a client learns which authorization server to use.
- Official MCP registry: io.snapvisor/snapvisor.
- llms.txt: /llms.txt lists the docs and the agent setup files.
Frequently asked questions
A remote Model Context Protocol server at https://mcp.snapvisor.io. It lets an AI agent list builds, read screenshot diffs, create reviews and post comments in Snapvisor, through the same public API the product uses.
Streamable HTTP, as a stateless endpoint. Any MCP client that speaks streamable HTTP can connect, including Claude Code and Cursor.
With OAuth 2.1, where the client opens a consent screen and is issued a scoped access token, or with a personal access token passed as a bearer header. Project (CI) tokens are upload-only and are not accepted.
Call the getMe operation through the execute_typescript tool; the check on this page shows the exact line. It answers with the signed-in user and the accounts the connection can reach.
Yes. The MCP server card at https://snapvisor.io/.well-known/mcp/server-card.json (also served from the MCP origin) lists the endpoint, transport and OAuth metadata URL, and the server is listed in the official MCP registry as io.snapvisor/snapvisor.
No. Until MCP access is included in your plan, only the getMe tool answers, so you can confirm the connection while every other operation replies with an upgrade message. The plan requirements are in the MCP server guide.
Sources
Snapvisor documentation