Get signed proof of what a page said
attest_pageProve what a web page said, at a time, in a way someone who distrusts you can check.
Renders the page and returns a signed, timestamped record of it: the text and its SHA-256, the HTTP status, the response headers, the serving IP, and the TLS certificate the site presented. Optionally a screenshot and its hash. All of it hashed into one claim and signed, so any single altered byte breaks the signature.
Use it when a page might change or be denied later: terms of service before you agree, a price before you act on it, a policy you are relying on, a claim a competitor published, a listing that can be edited.
Verification is free, needs no account, and does not depend on this service continuing to exist — the math is public and verify_attestation explains how to redo it yourself. We keep no copy, so the response you receive IS the evidence. Store it.
$0.05 USDC per call over x402. A render that fails costs nothing.
When to use: You may later need to prove what a page said at a moment: terms, a price, a claim. Use instead: screenshot_page or read_page when you only need to see or read it. Parameters: url: absolute https URL. screenshot: true adds an image to the evidence (larger response), default false. Returns: a signed, timestamped attestation (text, hashes, status, headers, IP, TLS certificate). Keep it: no copy is stored.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"url": "<url>"
},
"name": "attest_page"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Absolute https:// URL of the page to attest to. Anything a dispute could turn on: terms of service, a price, a published policy, a competitor's claim, a listing that may be edited later. | |
| payment | No | Base64 x402 payment payload. Omit it to receive a quote instead of an attestation; sign that and call again. | |
| screenshot | No | Default false in MCP. A screenshot makes the evidence much stronger, but the image comes back inline as roughly 55,000 characters of base64. With it false the attestation is text-only and internally complete: it claims no screenshot and commits to no hash you cannot check. Set true when the visual appearance is the thing in dispute and you can afford the bytes. |