MCP server
DiffiCat Official
com.difficat/difficat
Checked 26 Oct 2026, 08:29 UTC · Connected to it and listed its tools
Compare a website before and after a migration: missing pages, content changes, visual diffs.
Working at last checkVerified publisher: difficat.comAbout 8,060 tokens per request once connected15 tools
https://app.difficat.com/mcp
At a glance
- Type
- MCP server
- Publisher
- difficat.com (verified by the MCP Registry)
- Status
- Working at last check
- Tools
- 15
- Token cost
- About 8,060 tokens per request
- Sets up in
- Claude Code, Claude Desktop, Codex, Gemini CLI, Cursor, VS Code, Antigravity, ChatGPT, OpenAI API, Grok
- Last checked
- 26 Oct 2026, 08:29 UTC
Connect it to your agent
Opens the app, which shows the server and asks you to confirm. For other apps, copy the setup below.
Claude Code
claude mcp add --transport http difficat https://app.difficat.com/mcp
Claude Desktop
Settings → Connectors → Add custom connector, and paste the URL.
Codex (config.toml)
[mcp_servers.difficat] url = "https://app.difficat.com/mcp"
Gemini CLI
{"mcpServers":{"difficat":{"httpUrl":"https://app.difficat.com/mcp"}}}
Cursor
{"mcpServers":{"difficat":{"url":"https://app.difficat.com/mcp"}}}
VS Code
{"servers":{"difficat":{"type":"http","url":"https://app.difficat.com/mcp"}}}
Antigravity
agy mcp add difficat https://app.difficat.com/mcp
ChatGPT
Settings → Apps & Connectors → Advanced settings: turn on Developer mode, then Create a connector and paste the URL. Which plans can do this varies.
OpenAI API (Responses tools)
{"type":"mcp","server_label":"difficat","server_url":"https://app.difficat.com/mcp","require_approval":"always"}
Grok (xAI API tools)
{"type":"mcp","server_label":"difficat","server_url":"https://app.difficat.com/mcp"}
Tools
cancel_comparison~183 tokens
Stop a running job; the job reports cancelled within a minute, with the pages compared so far in its report. Free.capture_screenshotBrowses the web · ~686 tokens
Free 5 times a day per client address, no key needed. Full-page PNG of one URL at the given viewport width, returned inline when small, else as links.file to fetch with the jobToken. Call it for a one-off look at a page or a mobile-width check. Do not call it for pages a comparison job covers: get_rcompare_snapshot~1502 tokens
Free up to 40 pages a day per client address for a live compare, no key needed. Compares a saved snapshot, as Site A, against a live targetUrl (every stored page paired by path, or the urls pairs you name) at the snapshot’s width and check mode, priced at one captured page per pair (half a live pairdiscover_pages~381 tokens
Free 5 times a day per client address (at most 50 pages each), no key needed. Lists the pages of Site A (sitemap, robots.txt or crawl), mapped onto Site B when given. Call it to see which pages a comparison would cover or to pick pairs for urls. Do not call it before start_comparison only to price aget_balance~178 tokens
The prepaid balance and the last 20 ledger entries of the key the request carries in its Authorization: Bearer or X-DiffiCat-Key header. Call it to check what a key can still pay for; request_prepaid_key is the way to obtain a key. The balance is spendable money for any key, and the same balance theget_comparison~196 tokens
Status and progress of a job and, once it is terminal, its summary: passed, failed and issuesBySeverity. To wait for the end, call wait_for_comparison instead. Free.get_report~864 tokens
The finished report. Call it first with failedOnly: true and view: "digest": results, total and nextOffset then cover only the pages that failed, one small object per page with its issues, diff percentage and largest visual regions, and a one-line-per-page text block, while summary still covers everget_screenshot~483 tokens
Fetch one screenshot PNG by filename. Call it when a get_report page result or a capture_screenshot result names a screenshot you want to see; a PNG over the inline cap comes back as links.file to fetch with the jobToken. Pass a report region as region to see only the changed area: regions are in thget_snapshot~497 tokens
A saved snapshot of a site: without n, the snapshot (label, origin, width, check mode, status) with its page list (n, path, status, whether a screenshot exists) and your compares that use it; with n, that page’s stored record: path, status, title, heading, description and SEO fields, plus content.bolist_snapshots~115 tokens
Lists the saved snapshots the DiffiCat account behind the request’s key owns or was given access to, newest first, each with access owner or reader. Call it to find a snapshotId for get_snapshot or compare_snapshot. Needs an account’s key on the request; a share token names one snapshot and cannot lrecover_comparison~130 tokens
Returns the job or screenshot the payment credential in _meta paid for, with a new jobToken that replaces the old one; or, when the request carries a key and _meta no credential, the latest job that key paid for (no jobToken: the key reads it). Call it when a paid call’s result never arrived. Do notrequest_prepaid_key~233 tokens
Mints a prepaid key and a Checkout link for a human to pay by card, so later paid calls are debited from its balance instead of challenged. Call it when a call was refused for payment and your human prefers a card to a wallet; with a key already on the request it tops that key up instead. Do not calsend_feedbackSends messages · ~416 tokens
Sends one message to the people who run this service: why a price, a payment path or a result did not fit. Call it when you stop short of a paid call or a result was not what the task needed; a person reads every message. Do not call it to report a job failure you can retry. Example: {"topic":"pricestart_comparison~1901 tokens
Free up to 40 pages a day per client address, no key needed; sample report: https://difficat.com/agents/sample/report.json. Compares Site A against Site B on page existence, content and visual regression, priced per page compared. For a migration or redesign check, sourceUrl and targetUrl let discovwait_for_comparison~295 tokens
Waits until the job reaches a terminal status (completed, failed or cancelled) or timeoutSeconds pass (default 60, at most 300), then answers like get_comparison: status, progress and, once terminal, the summary with passed, failed and issuesBySeverity. A wait that runs out answers status "running";
Browse
Related MCP servers
- KANONYR publication checks
Before/after page checks: EUR 2 or USD 2. Free inspection, eligible repairs and audits. - OnPage.dev
Free SEO MCP that closes the loop: find, fix, ship as a PR or to a CMS, prove. 37 tools, no key. - Redirx
Map old site URLs to new ones during a migration, review proposals and export approved redirects. - quantakrypto pqc-tools
Scan code for quantum-vulnerable cryptography and get NIST post-quantum migration guidance. - Versyka
Find retiring AI models and outdated API SDKs in your code, with dates, replacements and guides. - Tandem Docs
Remote MCP server for Tandem docs, install guides, SDKs, workflows, and agent setup help. - Menlo
Complete a Menlo application, authorize carrier quote requests and answer quote follow-ups. - squirrelscan
Website QA for your coding agent: audit SEO, performance, security, accessibility over MCP.
Badge for your README
[](https://aptlynx.net/servers/com.difficat/difficat)
Listing text is written by the maker; AptLynx lists tools and does not vouch for them. Find another tool · Browse by topic · For agents