addrbookFor publishers
← The evidence ledger

Evidence row 3476967

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 20067acd-811e-4847-82a6-726a7374cb64
Recorded
Previous row
#2034191
Body SHA-256
c08703d204546230c661cf0049899ece2eefdc0619a500ee00a433b6f1f34efd
Leaf
0x7a650eb7c67765c260e9342fbdf54f4584df0fe19507acfb303300056d025a4f

What was observed

{
  "count": 5,
  "tools": [
    {
      "description": "Runs one Wafermap resource and pays its exact USD price over x402, in USDG on Robinhood Chain or USDC on Solana, Base, Arbitrum, Polygon, Arc or Soneium. Send a signed x402 v2 PaymentPayload in params._meta[\"x402/payment\"]; without it the tool returns isError with the payment requirements (price, networks, payTo) to sign. The work runs before the payment settles, so failed calls are never charged; a successful call returns the result plus a receipt with the transaction hash in _meta[\"x402/payment-response\"]. Agents without an x402 wallet can use the Wafermap CLI (`wafermap mcp`), which pays automatically within spending caps.",
      "inputSchema": {
        "properties": {
          "input": {
            "description": "Input object matching the resource's schema from wafermap_resource_schema, e.g. {\"network\":\"base\"}.",
            "type": "object"
          },
          "payer": {
            "description": "Optional: the EVM wallet that will sign the payment. A wallet holding 100,000 $WAFERMAP on Robinhood Chain is quoted 50% less for Wafermap's own resources (checked again against the signer).",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "type": "string"
          },
          "resource": {
            "description": "Resource id from wafermap_resources, e.g. \"gas-now\".",
            "type": "string"
          }
        },
        "required": [
          "resource"
        ],
        "type": "object"
      },
      "name": "wafermap_call"
    },
    {
      "description": "Searches the open x402 Bazaar index (run by Coinbase CDP) for paid APIs outside Wafermap's own catalog, such as weather, web search, data enrichment or token prices. Returns each service's URL, HTTP method, price, accepted networks, an example input and whether Wafermap can pay it (payable = accepts USDG on Robinhood Chain or USDC on Solana, Base, Arbitrum, Polygon, Arc or Soneium). Use it when no Wafermap resource fits the task. Free, no payment needed.",
      "inputSchema": {
        "properties": {
          "limit": {
            "description": "How many services to return (default 10, max 20).",
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          },
          "query": {
            "description": "What you need in a few words, e.g. \"weather forecast\" or \"web search\".",
            "minLength": 2,
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "wafermap_discover"
    },
    {
      "description": "Returns everything needed to call one Wafermap resource: its USD price, the JSON Schema of its input, a ready-to-use example input, what it returns, and its HTTP endpoint. Use it after wafermap_resources and before wafermap_call so the input is valid (invalid input is rejected before any payment). Free, no payment needed.",
      "inputSchema": {
        "properties": {
          "id": {
            "description": "Resource id from wafermap_resources, e.g. \"stock-signal\" or \"prediction-markets\".",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "wafermap_resource_schema"
    },
    {
      "description": "Lists Wafermap's pay-per-call resources (38 of its own) and the live Inference Marketplace listings (ids \"m/<name>\", run and paid directly to their seller, provider \"community\") with id, name, category, USD price and a one-line summary. Use it first to find the right resource id; then read its input schema with wafermap_resource_schema and run it with wafermap_call. Categories: LLMs, image generation, audio (speech and transcription), vision, web (reading and translation), on-chain data on Robinhood Chain and Base, tokenized stocks, Polymarket prediction markets, content tools, and workflows (several resources in one paid call: token due diligence, stock token brief, launch scan). Free, no payment needed.",
      "inputSchema": {
        "properties": {
          "category": {
            "description": "Optional category filter.",
            "enum": [
              "llm",
              "image",
              "audio",
              "vision",
              "web",
              "onchain",
              "stocks",
              "prediction",
              "content",
              "workflow"
            ],
            "type": "string"
          },
          "query": {
            "description": "Optional words to match against the id, name, summary and tags, e.g. \"stock\", \"image\", \"polymarket\". Omit to list everything.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "wafermap_resources"
    },
    {
      "description": "Lists the tokens a Wafermap wallet can swap through the KyberSwap aggregator on one network, with symbol, name and contract address. On Robinhood Chain this includes ETH, WETH, USDG and every Robinhood stock token (TSLA, NVDA, AAPL…); on Base it includes ETH, WETH and USDC. Use it to resolve a ticker to its contract address before quoting or executing a swap with the Wafermap CLI. Read-only and free; it does not trade.",
      "inputSchema": {
        "properties": {
          "network": {
            "description": "Which chain's tokens to list. Defaults to robinhood.",
            "enum": [
              "robinhood",
              "base"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "wafermap_tokens"
    }
  ]
}

What the leaf hashes

{"body":"c08703d204546230c661cf0049899ece2eefdc0619a500ee00a433b6f1f34efd","id":3476967,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793922956984819,"prev":2034191,"subject":"20067acd-811e-4847-82a6-726a7374cb64","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (322504 rows).

  1. 0x7a65616057bd9a44cd802fbf04e0d67cd98b3401ed8631d79a04b85a584fbaac
  2. 0xfdbd8bbcd8fa937c2f8dc5bf043514280e0b5c5258c2aeb9638fe08a115665d6
  3. 0x1a03e2fe72f7473b719c7cfdc48aec6001c19f850967e716a4271618ee54de77
  4. 0x3a178a2cb1d1ef5d3f0ece9a77d03edac3ddf8c6dd06257b72ea9a4c3b71c741
  5. 0x2af3e0a7bb14d0e9553c0ed31a1aaed514a09277016ce1579f354005da59dc97
  6. 0x9b4dc77523b9fc5ef8e6d78f145d0c265e3379dd23d101a54c2cd4f34340025e
  7. 0xcb9f3d978c69566de1245938afd8ab16bc9f72e2a742f6921218f648a535a549
  8. 0xd03a5f0d35a12bc6109810bbed73ebc4bd46c987256fa72c242144151145d846
  9. 0xdf7fd7210ad9efd92ab36b6eedc12838c0e8cb9f1948c92adfbdd255b21ce4ec
  10. 0x265c3a21698be1e7e0df7cd6acc3f71d04deb5d8da7e4bf11cf79066db9f881a
  11. 0x96e098d3083414fd7180c43a93c2cbc9503089afc26b751cfa7a8ab15e522cef
  12. 0x5bc9582de59b2ef40078e69faad9cdccb3d5bf5f8a444354f4638c7bc32ba49c
  13. 0x341a6f3fa17c526258f57b49c6ef122c8bdb0b7fba61add27ce3ed82362b8281
  14. 0x295b2ff917e72ce7e3d94bc8c6718d80f4989a94f335a61261966c43aec141b1
  15. 0x644b3663b447930221e9fe24f9d97eb640daf058f5ce062e43895179e35a3628
  16. 0x3b5d12e41df15017099876c1435af6ce1c7a30cfddd96040c3878ac62de1dbc3
  17. 0x7e5b4628b4269525ce0744fb873651b9d7be5748de44b7e6b858af09c7e30bd8
  18. 0xfb4e1f4d701ae273fb0cd57757f659e327608e5561a752b2099b436618493c84
  19. 0xf72fe7c4860b9addb17aac4a00b8afc2f8085836173f10f31697c3d192df119b
Day root
0x9f0215efb0252701dc86d5600ce95f276cccc716759bf112525ae863f698d128
Chained
0xc54ddff800630c6cd9656f99e7d6a61adce99bf1cea37121600598b0a9a720d2
Published
On Arc Testnet, block 70942081: 0x88f612ad94ca63af4e4e9faab9f34b665b41f03828afac1571ad013cc62bba94

How to check it · This row as JSON