Price and network
$0.02 USDC per verification on Base mainnet (eip155:8453). One paid call is one live check. Results are not cached as fresh.
Agent Tools · Live Listing Proof
Live · $0.02 USDC · Base mainnet
Live Listing Proof inspects a public listing page and reports whether a supplied claim is currently supported. Use it before an agent recommends a product, cites a listing, alerts a user, relies on a classified or auction result, or acts on an advertised price that may be stale.
When to use it
Typical flow: search or discover a third-party listing, then verify that URL before you recommend, cite, or act. Confirm advertised price, check whether a marketplace listing is still active, and reject stale shopping results.
When not to use it
Do not send a keyword and expect product results. Do not send a homepage, search-results page, or documentation URL and expect listing facts. It verifies one public listing page per paid call.
Contract
$0.02 USDC per verification on Base mainnet (eip155:8453). One paid call is one live check. Results are not cached as fresh.
url — public HTTP or HTTPS listing page, max 2048 characters. claim — 3–2000 character natural-language claim about availability, price, and/or location. Both required.
verdict, claim_supported, title, price, location, evidence, plus source_status and retrieval_method. Optional facts are null when unsupported.
source_status is verified, removed, blocked, unreachable, unsupported, or insufficient_evidence. Recommend or cite only when verified and claim_supported is true.
Machine / developer
No API key. No account. Discover, call, pay $0.02, receive a result. Private keys are never required in these examples and must never be pasted into this site.
POST https://live-listing-proof.mattskowronis.workers.dev/v1/verify
Content-Type: application/json
{"url":"https://example.com/listing/123","claim":"This listing is still available at the advertised price."}
Unauthenticated request returns 402 + PAYMENT-REQUIRED.
Pay 20000 atomic USDC on eip155:8453, then retry with PAYMENT-SIGNATURE.
Streamable HTTP MCP: https://live-listing-proof.mattskowronis.workers.dev/mcp.
Official MCP Registry identifier: dev.workers.mattskowronis.live-listing-proof/verify-listing.
Registry search.
Coinbase Bazaar MCP is
https://api.cdp.coinbase.com/platform/v2/x402/discovery/mcp.
search_resources must pass curatedOnly: false. HTTP search uses
query, not q:
verify listing before recommendation.
Agent Card: https://live-listing-proof.mattskowronis.workers.dev/.well-known/agent-card.json.
JSON-RPC: POST https://live-listing-proof.mattskowronis.workers.dev/a2a. Unpaid verify returns AUTH_REQUIRED until
x402 payment.
const unpaid = await fetch("https://live-listing-proof.mattskowronis.workers.dev/v1/verify", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({
url: listingUrl,
claim: "This listing is still available at the advertised price.",
}),
});
// unpaid.status === 402
const required = unpaid.headers.get("PAYMENT-REQUIRED");
// Paid path: @x402/fetch or CDP buyer SDK. Recommend only if
// result.source_status === "verified" && result.claim_supported import json
from urllib.request import Request, urlopen
VERIFY = "https://live-listing-proof.mattskowronis.workers.dev/v1/verify"
body = {"url": listing_url, "claim": "This listing is still available at the advertised price."}
req = Request(VERIFY, data=json.dumps(body).encode(),
headers={"content-type": "application/json"}, method="POST")
# 402 is expected without an x402 payment signature. urls = search_product(query)
for url in urls:
result = verify_listing(url, "This listing is currently available at the advertised price.")
if result.source_status == "verified" and result.claim_supported:
recommend(result)
else:
reject(url, result.source_status) Workflows
Search → candidate URLs → verify listing → recommend only if source-supported.
Discover listing → verify still active and current → alert the user or drop it.
Discover lot → verify current source state → continue or reject a sold/removed result.
Find a third-party listing → verify source-supported facts → cite only if supported.
Find supplier/product URL → verify current public facts → continue the workflow.
Machine surfaces
dev.workers.mattskowronis.live-listing-proof/verify-listingquery= and curatedOnly: false on MCPNeed a custom agent built around a job like this? Custom AI Agents & Automation.