verified-catalog
This MCP server lets you browse/search a verified x402 service catalog, inspect individual service records, and rank endpoints for a task and price.
search_catalog: keyword, category, max-price, and reachability search over the catalog snapshot; returns ungraded service results with latest check facts.get_service: fetch the full published record for one known service id, including pricing, quality test, latest check, and history summary.lookup: rank x402 endpoints for a task or specific endpoint under a max price by known-answer pass rate and price, with receipts and stale/facts-only handling.Catalog tools are free, read-only, and require no API key;
lookupuses the sharedvc-mcpfree quota of 5 lookups per UTC day, then returns a 402 error and never pays.Payment never changes lookup results, sort order, or listings.
This server has a remotely hosted endpoint. Open its connector listing for connection details, authentication requirements, and setup instructions:
Verified Pay-Per-Call Catalog
A static, machine-readable catalog of pay-per-call (x402) services for AI agents, with factual results of our own automated checks. Published by @402xAgent.
Discover (verdict-filtered index). GET https://api.402xagent.com/v1/discover?q=<terms>&verdict=pay|skip|recheck&limit=<n> searches 122,891 x402 endpoints from our Oct 20, 2026 crawl. This isn't a plain directory: every result comes with a pay, skip or recheck verdict, a skip reason, the price quoted in the endpoint's live 402 response during our crawl, the network, and an ed25519-signed receipt. Results are facts from an unpaid crawl probe, not endorsements. A pay whose terms are older than 7 days comes back as recheck (reason_code terms_stale), so run the free check (each result's check_url, or the MCP tool endpoint_spot_check) right before you pay. Also available as the MCP tool discover at https://api.402xagent.com/mcp. — withgrokbot
Try it in one line
Which x402 web-search endpoint delivered on our last paid calls, at $0.01 or less? No key; 5 free lookups per client per UTC day:
curl -s "https://api.402xagent.com/v1/lookup?task=web-search&max_price=0.01&ref=via-readme"const r = await (await fetch("https://api.402xagent.com/v1/lookup?task=web-search&max_price=0.01&ref=via-readme")).json();Results are sorted by known-answer pass rate over our last paid calls, then price, each with its Base settlement receipts. Other tasks: /v1/tasks. Optional client=<your agent name>; ref only says where you found the link.
Related MCP server: quanta-x402-mcp
Pricing
5 free lookups per client per UTC day. The client is your
clientvalue when you send one, otherwise a salted hash of your IP (raw IPs are never stored). The counter resets at 00:00 UTC. Only/v1/lookupis metered;/v1/tasks,/openapi.jsonand the static catalog files stay free.After that, $0.02 USDC on Base per lookup via x402. The lookup answers HTTP 402 with a v2
PAYMENT-REQUIREDheader (exactscheme,eip155:8453, USDC, payTo0x37cfCC8a29e9ff9458902B29E31E42dc7B718674). Retry with aPAYMENT-SIGNATURE(orX-PAYMENT) header; the payment is verified and settled through the public PayAI x402 facilitator, and the settlement tx comes back in thePAYMENT-RESPONSEheader and the response'saccessblock.Payment never changes results, sort order or listings. It buys query access only. Free, paid and exempt lookups run the same code on the same data and get identical results; no seller can pay for placement, and no check result or known-answer outcome depends on who paid. Every lookup response repeats this in
payment_policy.
Remote MCP server (free)
https://api.402xagent.com/mcp (Streamable HTTP, stateless JSON-RPC, no key). Same 3 tools and results as mcp/server.py: search_catalog, get_service and lookup. lookup uses the client name vc-mcp, so it shares that client's 5 free lookups per UTC day; after that it reports the 402 and does not pay. Registry name: io.github.withgrokbot/verified-catalog (server.json).
Always-paid endpoint (x402)
GET https://api.402xagent.com/v1/lookup/paid?task=web-search&max_price=0.01 takes the same parameters and returns the same result as /v1/lookup, for $0.02 USDC on Base per call with no free quota. Its 402 carries x402 Bazaar discovery metadata (extensions.bazaar); it is also listed in /openapi.json (x-payment-info) and /.well-known/x402. Bad parameters get a 400 before anything is settled.
Products
Paid digital downloads sold via the same Worker over x402 (always paid; free lookup quota and SELF_CLIENTS do not apply):
Overnight Chief of Staff Setup Pack —
$9USDC on Base.GET https://api.402xagent.com/v1/products/overnight-cos-pack(or MCP toolget_overnight_cos_pack). Unpaid calls return HTTP 402 with Bazaar discovery metadata. After payment: prompts, HTML morning-briefing template, and PDF guide.
Files
index.html,services/<id>.html,methodology.html: the site (no JavaScript, no requests to other hosts)catalog.json,services/<id>.json,llms.txt,.well-known/agent-card.json: machine-readabledata/services.json: the seed listings (source and retrieval date on each),data/site.json: brand/repo settingsresults/latest.json,results/history.jsonl,results/raw/<run>/<id>.json,results/spend_ledger.json: check results and evidencescripts/run_checks.py: run checks (free/dry-run by default) and rebuild;scripts/build_site.py: rebuild onlydata/quality_tests.json,scripts/quality.py: known-answer tests run on every paid call (pass/fail; broken services are "facts only")receipts.json: every paid call (time, charged, settlement tx with Basescan link, delivered, known-answer result)worker/: reliability lookup, a Cloudflare Worker (GET /v1/lookup?task=web-search&max_price=0.01&n=5) that readscatalog.jsonandreceipts.jsonfrom this site and counts distinct clients (seeworker/README.md)mcp/server.py: small stdio MCP server withsearch_catalog,get_service(readcatalog.json) andlookup(calls the Worker); the Worker serves the same tools remotely at/mcpserver.json: official MCP Registry entry (remote server)scripts/demand_weekly.py: weekly count of distinct lookup clients ->results/demand_weekly.json.github/workflows/daily.yml: daily free checks and commit
Run
python3 scripts/run_checks.py # free checks, no payment (default)
python3 scripts/build_site.py # rebuild pages from data/ and results/
python3 tests/run_tests.py # acceptance tests (Node 18+ for the Worker tests)Paid checks exist but are off by default. They need --pay, a wallet file outside this folder (--wallet), and pip install -r scripts/requirements-pay.txt. Hard caps: $0.10 per call, $1.00 per UTC day, $20.00 lifetime; only USDC "exact" on Base is ever signed.
We publish facts only, no grades. We hold no customer funds and are not a party to any seller transaction; lookup fees after the free tier go to our own wallet. To contest a result, open a GitHub issue (see methodology.html#contest).
License
MIT, see LICENSE.
Available Tools
3 toolsget_serviceARead-onlyIdempotentInspect
Fetch the complete catalog record for one known service id (e.g. from search_catalog or lookup results). Use search_catalog to find ids and lookup to rank services for a task; get_service has no per-call receipts, so for receipts with tx and Basescan links call lookup with endpoint=. Read-only. No auth or API key; free, no quota (reads the same catalog snapshot as search_catalog). Returns the record as published: id, name, provider, category, description, endpoint, advertised_price (USD, atomic, asset, network), sample_request, tasks, quality_test (known-answer test, facts_only flag and reason), paid_receipts (count), latest (full last check incl. x402_challenge, error, raw_log_url), history_summary and page_url. Unknown or missing id: error "no service with id ...".
Inputs: id (required).
lookupARead-onlyInspect
Rank x402 endpoints for a known task at or under a price: "which endpoint should I pay for task X at <= $Y?". Prefer it over search_catalog (keyword browsing, unranked) and get_service (one id's raw record). No auth or API key. Calls the hosted lookup service as client=vc-mcp; all MCP users share that client's 5 free lookups per UTC day (reset 00:00 UTC), after which the tool returns an error reporting the HTTP 402 ($0.02 USDC on Base via x402) and never pays. Returns results sorted by known-answer pass_rate over the last n paid calls, then price, each with price_usd, pass_rate, last_check_at, last_check, stale and receipts (time, tx, basescan_url, charged_usd, delivered, quality); seller-broken services come unsorted under facts_only. No match: empty results, matched 0. Needs task or endpoint; invalid params return an error. Payment never changes results.
Inputs: n, task, limit, payer, +2 more.
search_catalogARead-onlyIdempotentInspect
Browse or keyword-search the verified catalog of pay-per-call (x402) agent services. Use it when you don't know the task name or want to see what exists; use lookup to rank endpoints for a known task at a max price, and get_service for one id's full record. Read-only. No auth or API key; free, no quota or per-client limit: it only reads the catalog snapshot (bundled catalog.json in the local server, the published catalog.json on remote /mcp). Returns {count, results, generated_at, note, methodology_url}; results are in catalog order, ungraded, each with id, name, category, endpoint, advertised_price_usd, page_url and latest (checked_at, reachable, http_status, latency_ms, quoted_price_usd, price_matches_listing, charged_price_usd, delivered_valid, raw_log_url). No match: count 0, empty results. A non-numeric max_price_usd or limit returns an error.
Inputs: limit, query, category, max_price_usd, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool has a clearly distinct role: search_catalog browses or keyword-searches, get_service fetches one full record by id, and lookup ranks endpoints for a known task and price. Their descriptions explicitly state when to prefer each over the others, leaving no meaningful ambiguity.
The names are consistently snake_case and mostly follow a verb_noun pattern (search_catalog, get_service), but lookup is a bare verb. This is a minor deviation rather than an inconsistent convention.
Three tools is well-scoped for a read-only catalog server: one for browsing/search, one for detail retrieval, and one for ranked task-specific lookup. Each earns its place without redundancy.
The surface covers discovery, ranking, and detail retrieval for the catalog, which is appropriate for a read-only service. Minor gaps exist, such as no dedicated category/task listing tool, but agents can work around this via search_catalog.
Maintenance
Related MCP Connectors
Live uptime and source-URL verification for AI agents, with per-call x402/USDC paid endpoints.
Live uptime and source-URL verification for AI agents, with per-call x402/USDC paid endpoints.
Live uptime and source-URL verification for AI agents, with per-call x402/USDC paid endpoints.
Live uptime and source-URL verification for AI agents, with per-call x402/USDC paid endpoints.
Related MCP Servers
- AlicenseAqualityCmaintenanceValidate AI claims against live data: check endpoints, count competitors, and test hypotheses. Includes free and paid tools via x402.16MIT
- FlicenseNot gradedqualityCmaintenancePay-per-call structured data for autonomous AI agents. x402-metered, MCP-native.-
- AlicenseAqualityCmaintenanceTrust layer for AI agents: 22 pay-per-call x402 tools for scam and fraud checks, payment pre-flight, wallet screening, policy approvals, contact extraction and company research. Free preview with no wallet; paid calls settle in USDC on Base.22332 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to perform medical-billing tasks like prior authorization checks, claim denial decoding, unpaid claim triage, appeal assessments, and PHI de-identification using deterministic rules engines with per-call payments via the x402 protocol.62 npmMIT