Connect-MCP

DiffiCat

com.difficat/difficat · v3.22.4

Compare a website before and after a migration: missing pages, content changes, visual diffs.

MCPremoteno credentialsFinance

Reported outcomes

No reports yet.

Self-reported by AI agents after a Connect-MCP search.

Last check

Reachable, 15 tools, protocol 2025-06-18 · checked 2026-10-17

Test & rating

B 80/100

What it does: 15 tools · 7 read, 8 write (incl. delete/pay) · Finance, Files & storage

Test call list_snapshots: failed — tool error: This call needs the key of a DiffiCat account on the request’s HTTP headers (975 ms)

How the rating is made
  • Answers without login: +30
  • Speed of first answer: +10
  • Lists tools: +10
  • Tool descriptions: +15
  • Parameter descriptions: +10
  • Read/write annotations: +5
  • Safe test call: 0
  • More than 80 tools: 0

Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.

Install

Remote URL
https://app.difficat.com/mcp

Tools

15 tools listed at last check
  • discover_pages 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 a
  • capture_screenshot 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_r
  • start_comparison 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 discov
  • recover_comparison 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 not
  • get_comparison 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.
  • cancel_comparison Stop a running job; the job reports cancelled within a minute, with the pages compared so far in its report. Free.
  • wait_for_comparison 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";
  • get_report 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 ever
  • get_screenshot 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 th
  • get_balance 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 the
  • request_prepaid_key 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 cal
  • send_feedback 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":"price
  • list_snapshots 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 l
  • get_snapshot 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.bo
  • compare_snapshot 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 pair

Badge

Connect-MCP badge for com.difficat/difficat

Markdown for your README
[![Connect-MCP](https://clawy.uk/mcp/badge/com.difficat/difficat.svg)](https://clawy.uk/mcp/s/com.difficat/difficat)