The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Verify Proof listing page.
A free, open-source CLI tool for verifying blockchain-anchored timestamp proofs.
Verify that a file's SHA-256 hash matches a blockchain-anchored proof record, confirming the file existed at a specific point in time. Works with proof files from ProofLedger and other blockchain timestamp services.
Blockchain timestamping creates proof of existence — cryptographic evidence that a specific file existed at a specific time. The process:
This technique is used for:
Also available for Node.js:
npm install verify-proof— a zero-dependency port sharing the same proof format and semantics, tested against the same fixtures. Seejs/.
That's it. The base install pulls no dependencies — it uses only the Python standard library — and gives you a verify-proof command:
To use it as an MCP server for Claude Desktop or Cursor, install the optional extra instead (details below):
Prefer to run from source? Clone it — the CLI works the same:
Everything above works offline. This is the one command that does not: to prove a file exists now, some service has to anchor it, and this submits the hash to ProofLedger for that.
Only the 64-character SHA-256 digest leaves your machine, plus the filename
unless you pass --no-filename. The file itself is never uploaded, on any
command. Free accounts include 25 API proofs a month and unlimited Polygon
anchoring through the web app: proofledger.io.
The proof JSON file contains the blockchain anchor record:
verify-proof ships an optional Model Context Protocol server, so MCP-compatible AI clients — Claude Desktop, Cursor, and others — can verify blockchain timestamp proofs directly in a conversation. The file never leaves your machine: hashing and verification run locally, and only the resulting hash is ever compared against the proof.
The base install stays dependency-free; the [mcp] extra adds the MCP SDK and installs a verify-proof-mcp command (a stdio server).
| Tool | What it does |
|---|---|
compute_file_hash | Compute the SHA-256 (or other) hash of a local file |
verify_file | Verify a local file against a proof JSON file |
verify_hash | Verify a known hash against inline or file-based proof data |
explain_proof | Describe, in plain language, what a proof asserts and how to check it on a block explorer |
create_proof | Anchor a file's hash on ProofLedger to create a new proof. The only tool that uses the network, and the only one needing an API key |
Add this to your claude_desktop_config.json (see examples/claude_desktop_config.json):
Restart Claude Desktop. If verify-proof-mcp isn't found on your PATH, use the Python module form instead: "command": "python", "args": ["-m", "verify_proof_mcp"].
Then ask the assistant things like:
~/contract.pdf against ~/contract-proof.json."Proofs are produced by services like ProofLedger, which anchors SHA-256 hashes to Polygon and Bitcoin for legal, insurance, and chain-of-custody evidence. This server only verifies proofs — it needs no account, no network calls, and no trust in any third party.
verify-proof computes the SHA-256 hash of your local fileThis tool verifies proofs created by:
ProofLedger — Evidence preservation platform. Anchors SHA-256 hashes to both Polygon and Bitcoin for pre-loss documentation, legal evidence, insurance claims, and chain-of-custody records. Built for insurance, legal, and forensic workflows.
Any service producing SHA-256 hash proofs with blockchain transaction references.
Traditional timestamps (file system dates, email headers, document metadata) can be easily altered. Blockchain timestamps are:
MIT License. Free to use, modify, and distribute.
Built by Fulcrum Enterprises LLC — building tools for blockchain-verified proof of existence.