Numbered paragraphs, fetch time and fingerprints for a public URL.
Stripe · 30-day refund · built by Bryan in Cleveland County, NC · bryan@tryneverclosed.com
Tap a paragraph to cite it.
Download the exact bytes ProofFetch fingerprinted and run sha256sum. Or edit the hashed text and watch the seal break.

$ sha256sum example.com-2026-10-15.html 25ddf2c883e0d1958ea971d279a7e4f0fd446724ee3db7db19dadabd4a62e484 example.com-2026-10-15.html
The MCP spec README changed on 26 Aug 2026. Older quotes no longer match.
Computed in your browser.
Firecrawl, Jina Reader, Exa and Tavily return clean text, and do it well. ProofFetch adds the evidence layer.
| What the response carries | Firecrawl scrape | Jina Reader | Exa contents | Tavily extract | ProofFetch |
|---|---|---|---|---|---|
| Page text, cleaned | Markdown or HTML, plus title, status and source URL | Markdown, with title and URL | Markdown text, highlights or a summary, with title and URL | raw_content text, optionally in chunks of about 800 characters | Numbered paragraphs, title, status, final URL |
| IDs to cite, like [p3] | Not documented | Numbered image captions only | Not documented | Not documented | Yes |
| SHA-256 of the bytes and of the text | Not documented | Not documented | Not documented | Not documented | Both |
| Hidden-instruction check, with the excerpt | Not documented | Not documented | Not documented | Not documented | Yes |
From each product's public docs, checked 15 Oct 2026.
The free check on example.com: numbered paragraph, title, and both fingerprints, with no account and no payment.
example.com says it is “for use in documentation examples without needing permission” [p1], fetched 10 Oct 2026 01:45 UTC, content sha256 cbf3f738…85c8.
An example citation written from the real paid response for example.com. Each quote carries its paragraph number, fetch time and fingerprint.
claude mcp add --transport http proof-fetch https://prooffetch.tryneverclosed.com/mcp{
"schema": "proof-fetch-evidence.v1",
"retrievedAt": "2026-10-10T01:45:19.213Z",
"finalUrl": "https://example.com/",
"http": { "status": 200, "contentType": "text/html", "bytes": 577 },
"document": {
"title": "Example Domain",
"paragraphs": [{ "id": "p1", "text": "Example Domain This domain is for use in documentation examples without needing permission. …" }]
},
"integrity": {
"rawSha256": "25ddf2c8…e484",
"contentSha256": "cbf3f738…85c8"
},
"security": { "risk": "low", "indicatorCount": 0, "indicators": [] }
}
The real paid response for example.com, as the live site's example page shows it, shortened where marked with ….
Start free. A credit is used only when an extraction succeeds.
Bryan, in Cleveland County, NC: bryan@tryneverclosed.com. We reply within one business day.
Ask within 30 days and unused credits are refunded in full. Duplicate or faulty charges are refunded too.
Packs are paid once and never renew. Failed fetches never use a credit.
Operated by Neverclosed (tryneverclosed.com). Card payments are processed by Stripe and appear as Living Stack, the merchant account Neverclosed operates.