audit_urlLABSCO SUMMARY
Gives a number and then the next change to make.
A grade on its own is not actionable; the useful output is the specific finding underneath it — the maintainers' own dogfood run scored B+ 75/100 and flagged 5 font families on a page where the professional limit is 2, which is a concrete task. Because it reads the rendered DOM rather than comparing screenshots, it works on a page that has never shipped and has no baseline. Only submit_for_crawl needs a key; the other five run without one.
What it is
A design linter for AI-generated frontends, shipped as a CLI with an MCP server built in. It crawls the page in a real browser, measures color, spacing and type discipline, checks APCA contrast and semantic structure, and flags the patterns generated UIs share — default Tailwind palettes, pill radius on everything, generic hero chips, missing design tokens.
What you get
- A URL scored across 12 design dimensions with a grade from A+ to F and a 0–100 number —
audit_url - The full MDVP-T/1.0 perception — DOM, entropy, saliency, motion, classification and recommendations —
perceive_url - Two domains compared side by side —
compare_sites - Top or worst sites by label:
premium,good,vibecoded,bad—top_sites - The page as Markdown with its MDVP scores embedded —
get_page_content - A URL submitted to the public dataset, results in about 60s —
submit_for_crawl, the one tool that needs a key - A CI gate —
audit --checkon preview URLs, withinit --github-actiongenerating the workflow
Requirements
No API key, no account and no screenshot baseline for the default audits — they run locally through the rendered browser path. Run the server with npx -y @mdvp/cli@latest mcp over stdio; npx @mdvp/cli mcp-config prints a copy-pasteable snippet for your editor. Only submit_for_crawl needs a key, read from MDVP_API_KEY or ~/.mdvp/config.json via npx @mdvp/cli login. Static and cache shortcuts are opt-in through MDVP_USE_CACHE=1, with --fast making that visible in scripts. Package @mdvp/cli 1.36.1 with the binary mdvp, MIT licensed.
Setup effort
One command — npx -y @mdvp/cli@latest mcp
USE CASES
Checking a generated page before you show anyone
Audit the URL and read the lowest-scoring component, which is where the visible problem usually is.
Gating a preview URL in CI
Run the check form against the deploy preview so color sprawl and font drift fail before merge.
Going from a grade to a diagnosis
Chain the audit into the full perception to get saliency, motion taxonomy and recommendations rather than a number.
Seeing how you compare
Put your domain next to a competitor's, or pull the top sites for a label to see what a good score looks like.
6 tools
Listed in project docs. Your client may show a different list.
perceive_urlcompare_sitestop_sitesget_page_contentsubmit_for_crawlBEFORE YOU INSTALL
What to know first
Tools you get
6 tools named in the project's documentation.
Requires
npx on PATH
Optional
MDVP_API_KEY in your environment
Where it runs
All 7 documented clients run the server on your machine.
INSTALLATION
Connect your client
Server setup
npx -y @mdvp/cli@latest mcpMCP Clients
Claude Desktop, Cursor, Windsurf
{
"mcpServers": {
"mdvp": {
"command": "npx",
"args": [
"-y",
"@mdvp/cli@latest",
"mcp"
]
}
}
}None of the configurations set MDVP_API_KEY, and only submit_for_crawl needs it. The server reads the key from the MDVP_API_KEY environment variable, or from ~/.mdvp/config.json, which npx @mdvp/cli login writes.
OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mdvp": {
"type": "local",
"command": [
"npx",
"-y",
"@mdvp/cli@latest",
"mcp"
]
}
}
}None of the configurations set MDVP_API_KEY, and only submit_for_crawl needs it. The server reads the key from the MDVP_API_KEY environment variable, or from ~/.mdvp/config.json, which npx @mdvp/cli login writes.
Cline, Continue, Other MCP clients
{
"mcpServers": {
"mdvp-cli": {
"command": "npx",
"args": [
"-y",
"@mdvp/cli@latest",
"mcp"
]
}
}
}None of the configurations set MDVP_API_KEY, and only submit_for_crawl needs it. The server reads the key from the MDVP_API_KEY environment variable, or from ~/.mdvp/config.json, which npx @mdvp/cli login writes.