Live Listing Proof

Verify public marketplace, retail, classified, and auction listings before an agent relies on them; return source-supported facts or explicit safe-failure states.

Documentation

Agent Tools · Live Listing Proof

Live · $0.02 USDC · Base mainnet

Verify a public listing before an agent relies on it.

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.

Production endpoint OpenAPI A2A Agent Card

When to use it

Call it after you have a URL.

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.

  • Shopping agents verifying a product URL before recommendation
  • Classified monitors checking that an ad is still current
  • Auction agents confirming a lot has not sold or been removed
  • Research agents citing only source-supported listing facts
  • Procurement agents checking a supplier or product page before continuing

When not to use it

It is not a search engine.

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.

  • Not a catalog, scraper farm, or price-history database
  • Not a substitute for merchant-owned inventory APIs
  • Does not invent title, price, or location when the source cannot support them

Contract

What you send and what you get.

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.

Input

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.

Output

verdict, claim_supported, title, price, location, evidence, plus source_status and retrieval_method. Optional facts are null when unsupported.

Fail-closed states

source_status is verified, removed, blocked, unreachable, unsupported, or insufficient_evidence. Recommend or cite only when verified and claim_supported is true.

Machine / developer

How to call it.

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.

Direct x402 HTTP

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.

MCP

Official MCP Registry identifier: dev.workers.mattskowronis.live-listing-proof/verify-listing. Registry search. Coinbase Bazaar MCP ishttps://api.cdp.coinbase.com/platform/v2/x402/discovery/mcp.search_resources must pass curatedOnly: false. HTTP search usesquery, not q: verify listing before recommendation.

JavaScript / TypeScript

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

Python

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.

Agent pseudocode

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

Where it sits in an agent loop.

Shopping agent

Search → candidate URLs → verify listing → recommend only if source-supported.

Marketplace / classified

Discover listing → verify still active and current → alert the user or drop it.

Auction agent

Discover lot → verify current source state → continue or reject a sold/removed result.

Research agent

Find a third-party listing → verify source-supported facts → cite only if supported.

Procurement agent

Find supplier/product URL → verify current public facts → continue the workflow.

Machine surfaces

Discovery already live.

Need a custom agent built around a job like this? Custom AI Agents & Automation.