Skip to main content
Glama
whoogydotcom

Whoogy MCP Server

Official
by whoogydotcom

Whoogy MCP Server — Figma to Website Design QA for Claude

License: MIT MCP Server Works with Claude

Fastest Figma-to-website design QA, powered by AI. This MCP server connects Claude to Whoogy to auto-detect pages, run automated visual regression and UI comparison scans, and deliver a full design QA report in minutes — catching spacing, typography, color, and layout drift before launch, without leaving your conversation.

What is Whoogy MCP?

Whoogy compares a Figma design against its live website and reports exactly where the build has drifted from the design — pixel-level spacing errors, wrong fonts, mismatched colors, missing sections, broken layouts. This repository is the Model Context Protocol (MCP) server that exposes that Figma vs. live-site comparison as tools Claude can call directly, so a full design QA scan runs and reports back inside your AI chat instead of a separate app or browser plugin.

If you're searching for Figma to code QA, design QA automation, visual regression testing for Figma, or a Claude MCP server for design review, this is it.

Related MCP server: Claude Talk to Figma MCP

Why an MCP server instead of a Figma plugin?

Most Figma-to-live-site QA tools are overlay plugins — you open Figma, open the live site, and eyeball the difference manually, page by page. Whoogy MCP flips that:

  • Automatic page discovery — give it a Figma file and a live root URL; it matches Figma frames to live routes on its own.

  • No context switching — ask Claude to run the scan, review the report, and re-run it, all in the same conversation.

  • Structured findings, not just screenshots — every issue is categorized by severity (critical → low) and type (spacing, typography, color, layout, missing element), not just a visual diff image.

  • Minutes, not hours — a full multi-page comparison report comes back in minutes, so design QA can run on every deploy, not just before a big launch.

Connect it to Claude

This is a remote MCP server — no install, no API key to copy around. Claude authenticates you through Whoogy's own sign-in (OAuth 2.1 + PKCE), so it only ever acts on the Whoogy account you approve.

Claude.ai / Claude Desktop — Settings → Connectors → Add custom connector, then paste:

https://mcp.whoogy.com/mcp

Claude will open a Whoogy sign-in/consent page; approve it once and you're connected.

Other MCP clients (Cursor, VS Code Copilot, etc.) that support remote HTTP + OAuth connectors can point at the same URL.

What it can do

Tool

What it does

check_credits

Remaining Whoogy credit balance on the connected account

list_projects

Lists the account's Whoogy projects (a live site + Figma file pairing)

list_recent_scans

Recent QA scans — jobId, live URL, Figma file, status, date

check_figma_tier

Checks whether a Figma file needs the plugin-ingest flow (free/rate-limited team)

start_scan

Starts comparing a Figma file against a live site; returns a jobId

get_scan_status

Polls a scan/discovery job

list_discovered_pages

Lists matched Figma-frame ↔ live-URL pairs for a discovery job

run_selected_pages

Runs the actual visual + content comparison on chosen pages (spends credits)

get_report

Structured findings for a completed comparison: similarity score + issues by severity

get_visual_diff

Side-by-side (Figma vs. live) image for one page

create_plugin_session / check_plugin_ingest / run_scan_from_ingest

Fallback flow for Figma files on a free/rate-limited team, via the Whoogy Figma plugin

duplicate_figma_file

Copies a rate-limited Figma file into a Whoogy-owned team so it can be scanned directly

Typical flow: start_scan → poll get_scan_status → list_discovered_pages → confirm with the user → run_selected_pages → poll get_scan_status → get_report → get_visual_diff.

How auth works

Claude registers itself as an OAuth client (RFC 7591) and runs a standard authorization-code + PKCE flow against this server. /authorize redirects your browser to Whoogy's own consent page; once you approve with your normal Whoogy sign-in, the long-lived Whoogy JWT that flow mints becomes the MCP access token, verbatim — there's no separate token system to manage. There are no refresh tokens: the access token is a 60-day JWT, and Claude re-runs the (fast) authorization flow once it expires.

Frequently asked questions

What does this MCP server actually compare? A Figma file (or specific frames) against a live website's rendered pages — layout, spacing, typography, color, and content, page by page.

How is this different from a pixel-overlay Figma plugin? An overlay plugin needs a human to look at each page and spot differences. This server discovers pages automatically and returns a structured, severity-ranked report Claude can read, summarize, and act on.

How long does a scan take? Discovery and comparison run as background jobs; a typical multi-page report comes back within minutes of confirming which pages to run.

Is my data shared with other users? No. Every tool call runs as your signed-in Whoogy account via OAuth — reports, credits, and projects are scoped to your account only.

Which AI assistants can use this? Any MCP client that supports remote, OAuth-authenticated HTTP servers — Claude.ai, Claude Desktop, and other MCP-compatible tools (Cursor, VS Code Copilot, etc.).

Does it cost anything to run a scan? Comparisons spend Whoogy credits (one per page compared). check_credits reports your balance before you commit to a run.

Self-hosting

This server is stateless per request (a fresh McpServer + transport per HTTP call) and talks to the main Whoogy REST API over HTTP as the signed-in user — it holds no product data of its own. It shares its OAuth-grant and device-code collections with the main Whoogy API's MongoDB, so it isn't meant to be pointed at a different backend; self-hosting only makes sense if you're running the rest of Whoogy yourself too.

npm install
cp .env.example .env   # fill in MONGODB_URI, JWT_SECRET, MCP_API_BASE, FRONTEND_URL
npm run dev

See .env.example for what each variable does. MCP_PUBLIC_URL must be a publicly reachable HTTPS URL for any remote client (claude.ai, etc.) to connect — plain HTTP only works for purely local testing.

Learn more

License

MIT

Related MCP Connectors

Related MCP Servers