What Agents Buy.

Independent reviews of the x402 APIs behind agentic commerce. I give an AI agent a real wallet, buy things with it, and publish every receipt.

Written by Neil·nothing here is sponsored·new? start here·how we grade

25bought and graded
22agent calls this week

I pay for these APIs with my own wallet and publish what happened. The volume this market gets quoted by is mostly wallets paying themselves, so I read the payments off the chain myself. I check whether the answer that comes back is actually right, against a source that cannot be the seller. And the verdict an agent gates on is backed by money that moved. Every weight and threshold behind that is published at how we grade. The sweep covers every USDC payment agents make on Base and Solana, every day. Free MCP server for your agent →

Why this differs from the x402 dashboard total

This headline counts USDC received at the seller wallets we track, on Base and Solana, over the last complete UTC day. Of it, $34,324 settled on Base and $74,048 on Solana (Solana is mostly Bitrefill and Laso). The /x402 dashboard sweeps Base only, so it shows roughly the Base portion; a rolling-24h window there also differs from a calendar day by a few percent. Every figure on this site carries its scope for exactly this reason.

gblin-sentinel.vercel.app

HOLDverifiedPreflight verdict before paying this host · score 80 · backed by 4 settled payments to this seller with a conclusive result · what this means
4Paid calls recorded

Grades

No purchase-based grade yet. Everything below was measured, by paying this seller or by sweeping the chain, and none of it is editorial.

Did it deliver what it promised?

4 of 4 endpoints we paid returned everything their own published schema promised.

This is a paid delivery check: we called the endpoint with its own advertised input and compared the response against its own advertised output. It is the one thing free probing cannot see.

Verifiable receipts

4 paid calls to this host are recorded as tamper-evident receipts, all delivered or graded accurate. Each can be re-verified independently, from the archived bytes up.

deliveredwab_421a331ae39490f8

gblin-sentinel.vercel.app

Promised 3 fields for $0.002, paid, and returned all 3.

✓ integrity✓ verdict✓ raw bytes
Evidence and how to verify it yourself

The real response shape, types only, values discarded:

{
 "data": {
  "basket": {
   "array_of": "object"
  },
  "crashShieldActive": "boolean",
  "keeperRewardAvailable": "boolean",
  "slashedAssets": "array",
  "stabilityFundEth": "string",
  "timestamp": "integer",
  "totalSupply": "string",
  "wethBalanceEth": "string"
 },
 "endpoint": "string",
 "price": "string"
}

Three independent checks, none needing trust in this site: integrity recomputes the id as a hash of the evidence, so any edit shows; verdict re-derives the result offline; raw re-reads the untouched bytes archived at pay time and reproduces the shape.

python3 receipts.py --verify wab_421a331ae39490f8
deliveredwab_90102ae7d91b7448

gblin-sentinel.vercel.app

Promised 3 fields for $0.002, paid, and returned all 3.

✓ integrity✓ verdict✓ raw bytes
Evidence and how to verify it yourself

The real response shape, types only, values discarded:

{
 "data": {
  "bountyAvailable": "boolean",
  "instruction": "string",
  "mcpServer": "string",
  "mcpTool": "string",
  "rewardEth": "string",
  "stabilityFundEth": "string"
 },
 "endpoint": "string",
 "price": "string"
}

Three independent checks, none needing trust in this site: integrity recomputes the id as a hash of the evidence, so any edit shows; verdict re-derives the result offline; raw re-reads the untouched bytes archived at pay time and reproduces the shape.

python3 receipts.py --verify wab_90102ae7d91b7448
deliveredwab_e596bb3a78456c24

gblin-sentinel.vercel.app

Promised 3 fields for $0.03, paid, and returned all 3.

✓ integrity✓ verdict✓ raw bytes
Evidence and how to verify it yourself

The real response shape, types only, values discarded:

{
 "data": {
  "assets": {
   "array_of": "object"
  },
  "gblin": {
   "basket": "array",
   "crashShieldActive": "boolean",
   "keeperRewardAvailable": "boolean",
   "slashedAssets": "array",
   "stabilityFundEth": "string",
   "totalSupply": "string"
  },
  "recommendation": {
   "action": "string",
   "confidence": "number",
   "factors": "array",
   "rationale": "string",
   "suggested_allocation_pct": "integer"
  },
  "signal": "string",
  "summary": "string",
  "timestamp": "integer"
 },
 "endpoint": "string",
 "price": "string"
}

Three independent checks, none needing trust in this site: integrity recomputes the id as a hash of the evidence, so any edit shows; verdict re-derives the result offline; raw re-reads the untouched bytes archived at pay time and reproduces the shape.

python3 receipts.py --verify wab_e596bb3a78456c24
deliveredwab_f4529e5f162ddad7

gblin-sentinel.vercel.app

Promised 3 fields for $0.002, paid, and returned all 3.

✓ integrity✓ verdict✓ raw bytes
Evidence and how to verify it yourself

The real response shape, types only, values discarded:

{
 "data": {
  "assets": {
   "array_of": "object"
  },
  "signal": "string",
  "summary": "string",
  "timestamp": "integer"
 },
 "endpoint": "string",
 "price": "string"
}

Three independent checks, none needing trust in this site: integrity recomputes the id as a hash of the evidence, so any edit shows; verdict re-derives the result offline; raw re-reads the untouched bytes archived at pay time and reproduces the shape.

python3 receipts.py --verify wab_f4529e5f162ddad7

The full record and the format are at /receipts.

What it sells

4 endpoints listed, priced $0.0020 to $0.0300, settling on Base.

First seen in the registry on 2026-08-04.

Grades here come from paying this service and recording what happened, or from calling it where it is free. Settlement figures are swept daily from Base USDC Transfer logs. Nothing on this page is sponsored.

All ratings · Top paid services · Latest