swatchdog is an MCP server that an agent can call on its own output to catch and fix design drift deterministically, in the build loop. It is now in the Anthropic Connector Directory (one click connect inside Claude)
The build on Vercel (the site, storefront, and delivery via swatchdog.dev):
- Static-first,
framework: null. The whole site is hand-authored HTML/CSS/JS compiled by a small build script into adist/folder. Vercel serves it as pure static output. No framework, no build step on Vercel's side. Fast, dependency light, every page a plain document. - Rewrites as a same-origin API gateway: Five
vercel.jsonrewrites (/checkout,/verify,/paste,/reissue,/recall) proxy the storefront's dynamic calls to the commerce backend, so the browser only ever talks toswatchdog.dev.No CORS, no exposed backend URLs, a clean same-origin API from a static site. - The full commerce and delivery flow. Stripe Checkout launches from a Vercel served page through
/checkout; the post-purchase page (license key, download, MCP snippet) is static on Vercel and calls/verifythrough the rewrite. Recovery and key-reissue flows too. - Vercel Web Analytics across the site for page metrics.
- Git-driven deploys: merge to
main→ production on the custom domain with automatic SSL.
Honest note about architecture: the drift-check (MCP connector/validator) runs on Google Cloud Run. Vercel is the entire front-of-house: discovery, storefront, checkout UX, delivery, analytics, and the same-origin gateway tying the browser to the backend. Clean split. Vercel does the customer-facing half end-to-end.
Live: https://swatchdog.dev Directory: https://claude.ai/directory/connectors/swatchdog