Deploy Check MCP
200 OK is not the same as “it works”. A page can return 200, weigh 41 KB, and show a human absolutely nothing — that is what a JavaScript bundle that threw looks like from the outside, and what a deploy that published the wrong directory looks like too.
Three read-only tools that let your AI agent answer the question you actually have after a deploy: did it work, and does the page show anything?
> check the homepage after my deploy
Up (200, 7166 ms) and rendering 5668 characters of visible text; 1 thing worth a look.
WARN Took 7166 ms to respond.
note No og:image. Links to this page will share without a preview image.
The tools
check_page
Status, redirect chain, response time, and — the part nobody checks — how much visible text the page actually renders. Plus title, meta description, viewport, canonical, og:image, and a stray noindex left over from staging.
check_links
Every link on a page, checked. HEAD first, GET as a fallback, so servers that refuse HEAD are never reported as dead links.
compare_pages
Two URLs, same signals. Staging against production, or the same URL before and after a release. If both render identical text, the deploy has not landed.
Install
Node 18 or newer. No account, no API key, no telemetry.
git clone https://github.com/fahmiwol/deploy-check-mcp
cd deploy-check-mcp && npm install && npm test
claude mcp add deploy-check -- node /full/path/to/deploy-check-mcp/src/server.js
What it will not do
It does not run JavaScript. It reads what the server sends — the page as a crawler, a link preview and a first paint see it. The honest consequence: a healthy single-page app looks identical to a broken one in raw HTML. So blank HTML is only a hard failure when the page loads no scripts at all, because then nothing can ever fill it. With scripts present you get a warning that says plainly that this tool cannot tell the two apart.
A tool that called every React app broken would be worth ignoring within a day.