From one source check
to your agent workflow.
Use ProofFetch when your agent needs a public page as cited text with source, retrieval time and integrity hashes. First confirm that we can read the page. No key, card or payment is needed for that check.
1. Add the remote MCP server
In a client that supports remote HTTP MCP, add this server URL. Use its built-in connection flow; it handles initialization and tool discovery. Client-specific configuration field names vary.
https://proof-fetch-agent-api.neoaethel.workers.dev/mcp
Authentication: none for the two discovery/preflight tools. No API key belongs in this URL.
2. Run the free tool
Choose proof_fetch_preflight with the following arguments:
{
"url": "https://example.com/",
"maxChars": 30000
}For your own MCP client implementation, initialize first with protocol 2025-06-18, send notifications/initialized, then send this JSON body using POST /mcp and Content-Type: application/json:
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "proof_fetch_preflight",
"arguments": {
"url": "https://example.com/",
"maxChars": 30000
}
}
}Inspect result.isError before consuming result.structuredContent. An HTTP 200 alone does not mean the source check succeeded. The response contains metadata and hashes, not the page's extracted text. proof_fetch_offer describes the paid offer; it does not buy anything.
3. Request cited text when you need it
Paid extraction is a separate REST workflow, not a third MCP tool. It costs $0.50 per successful extraction through Stripe MPP card/SPT. This service does not currently provide a hosted card-entry checkout. Your payment-capable client must have the buyer's explicit authority.
Send POST /v1/evidence with the URL, optional maxChars, and a newly generated high-entropy idempotencyKey (22–128 URL-safe characters). The first unpaid request receives an HTTP 402 payment challenge only after successful extraction. Use a compatible Stripe MPP client to authorize that challenge; do not paste card details, payment credentials or API keys into a chat or source URL.
The fulfilled response includes cited text and a Payment-Receipt header. Preserve the receipt and request/content hashes. For recovery, reuse the same request and idempotency key rather than generating a new purchase. Consult the request schema and current offer before implementing billing.
When a check fails
- Use a complete public HTTP(S) URL, including its scheme.
- Private networks, sign-in pages, cookies and caller-provided credentials are not supported. JavaScript-only page content may be unavailable.
- Do not pay for a failed preflight or treat injection indicators as a safety guarantee.
- For a technical or payment issue, open a support case with non-sensitive error details and retain the returned case token.