addrbookFor publishers
← The evidence ledger

Evidence row 565539

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 0e3b5412-b1bf-48a7-9003-cbc0468ed27b
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
fe2f5acb80a26bb88907f0380a2f1e9ec4ed1547170998cb4f02e5e76be74f00
Leaf
0x9804c83d5087fb68c0223114cdbb5963bdc77fde739f621e9eca8bff3c33e9b5

What was observed

{
  "count": 8,
  "tools": [
    {
      "description": "Show day-by-day stock for one GPU model over the last seven days, per provider and node size: instances observed available versus total each day. Optionally limit to one provider. Use it to judge how reliably a GPU can be found in stock; prices come from get_prices. Days without observations are unknown, not zero. Pages default to 20 rows, maximum 100; each page costs one data unit.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "gpu": {
            "description": "GPU model name, case-insensitive, e.g. \"H100\", \"RTX 4090\". See list_gpus.",
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "page": {
            "additionalProperties": false,
            "description": "Pagination. Omit for the first page.",
            "properties": {
              "cursor": {
                "description": "nextCursor from the previous page. Reuse the same filters and limit.",
                "maxLength": 512,
                "type": "string"
              },
              "limit": {
                "default": 20,
                "description": "Rows per page, 1-100. Defaults to 20.",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              }
            },
            "type": "object"
          },
          "provider": {
            "description": "Provider name or slug, e.g. \"runpod\", \"lambda\". See list_providers.",
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "gpu"
        ],
        "type": "object"
      },
      "name": "get_availability"
    },
    {
      "description": "Report how fresh GPU Finder's data is: when price and availability collection last completed, and each provider's last success, last run, consecutive failures and last error. Use it to decide whether a price or availability answer may be stale. Costs one data unit; it is not an anonymous health check.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_data_status"
    },
    {
      "description": "Answer \"what is the cheapest way to rent this GPU now\": the cheapest listed offer and the cheapest offer observed in stock for one GPU model and node size, each with provider, region, whole node and per GPU hourly USD price, availability status and check time, plus how many providers were compared. Use it for a single recommendation; use get_prices for every offer. The whole snapshot costs one data unit; collected stock is not a capacity guarantee.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "count": {
            "default": 1,
            "description": "GPUs per node. Prices are for the whole node. Defaults to 1.",
            "maximum": 10000,
            "minimum": 1,
            "type": "integer"
          },
          "gpu": {
            "description": "GPU model name, case-insensitive, e.g. \"H100\", \"RTX 4090\". See list_gpus.",
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "gpu"
        ],
        "type": "object"
      },
      "name": "get_market_snapshot"
    },
    {
      "description": "Show how one GPU model's price changed month by month per provider: on-demand and spot USD per whole node hour for up to 12 UTC months. Use it for trends; use get_prices for current prices. Pages default to 20 rows, maximum 100; each page costs one data unit. Reuse the same filters and page limit with nextCursor.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "count": {
            "default": 1,
            "description": "GPUs per node. Prices are for the whole node. Defaults to 1.",
            "maximum": 10000,
            "minimum": 1,
            "type": "integer"
          },
          "gpu": {
            "description": "GPU model name, case-insensitive, e.g. \"H100\", \"RTX 4090\". See list_gpus.",
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "months": {
            "description": "UTC months of history per provider, 1-12. Defaults to 12.",
            "maximum": 12,
            "minimum": 1,
            "type": "integer"
          },
          "page": {
            "additionalProperties": false,
            "description": "Pagination. Omit for the first page.",
            "properties": {
              "cursor": {
                "description": "nextCursor from the previous page. Reuse the same filters and limit.",
                "maxLength": 512,
                "type": "string"
              },
              "limit": {
                "default": 20,
                "description": "Rows per page, 1-100. Defaults to 20.",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              }
            },
            "type": "object"
          }
        },
        "required": [
          "gpu"
        ],
        "type": "object"
      },
      "name": "get_price_history"
    },
    {
      "description": "List every provider offer for one GPU model and node size: provider, instance type, region, GPU count, on-demand and spot USD price per whole node hour, links and last update. Use it for the full price table; use get_market_snapshot for only the cheapest offer, get_availability for stock and get_price_history for trends. Prices reflect collected data, not a live capacity guarantee. Pages default to 20 rows, maximum 100; each page costs one data unit.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "count": {
            "default": 1,
            "description": "GPUs per node. Prices are for the whole node. Defaults to 1.",
            "maximum": 10000,
            "minimum": 1,
            "type": "integer"
          },
          "gpu": {
            "description": "GPU model name, case-insensitive, e.g. \"H100\", \"RTX 4090\". See list_gpus.",
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "page": {
            "additionalProperties": false,
            "description": "Pagination. Omit for the first page.",
            "properties": {
              "cursor": {
                "description": "nextCursor from the previous page. Reuse the same filters and limit.",
                "maxLength": 512,
                "type": "string"
              },
              "limit": {
                "default": 20,
                "description": "Rows per page, 1-100. Defaults to 20.",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              }
            },
            "type": "object"
          }
        },
        "required": [
          "gpu"
        ],
        "type": "object"
      },
      "name": "get_prices"
    },
    {
      "description": "Show this API key's usage across REST and MCP: plan allowance, units used and remaining, and UTC reset times. Use it before large paginated reads or after a quota_exceeded error. Spends no monthly units and works after the monthly allowance is exhausted, but is still rate limited.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_usage"
    },
    {
      "description": "List the GPU models GPU Finder tracks: canonical name and slug, VRAM, memory type, bandwidth, interconnect, provider and instance counts, and min/max hourly USD price. Use it to find valid gpu names for the other tools or to compare GPU specs; use get_prices for per-provider offers. Pages default to 20 rows, maximum 100; each page costs one data unit.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "page": {
            "additionalProperties": false,
            "description": "Pagination. Omit for the first page.",
            "properties": {
              "cursor": {
                "description": "nextCursor from the previous page. Reuse the same filters and limit.",
                "maxLength": 512,
                "type": "string"
              },
              "limit": {
                "default": 20,
                "description": "Rows per page, 1-100. Defaults to 20.",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              }
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "name": "list_gpus"
    },
    {
      "description": "List GPU cloud providers: name and slug, GPU and instance counts, min/max hourly USD price, egress cost per GB and free egress allowance, website and GPU Finder links, and last update time. Use it to find valid provider slugs or compare providers overall; use get_prices for one GPU's offers. Pages default to 20 rows, maximum 100; each page costs one data unit.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "page": {
            "additionalProperties": false,
            "description": "Pagination. Omit for the first page.",
            "properties": {
              "cursor": {
                "description": "nextCursor from the previous page. Reuse the same filters and limit.",
                "maxLength": 512,
                "type": "string"
              },
              "limit": {
                "default": 20,
                "description": "Rows per page, 1-100. Defaults to 20.",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              }
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "name": "list_providers"
    }
  ]
}

What the leaf hashes

{"body":"fe2f5acb80a26bb88907f0380a2f1e9ec4ed1547170998cb4f02e5e76be74f00","id":565539,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793138192479745,"prev":null,"subject":"0e3b5412-b1bf-48a7-9003-cbc0468ed27b","subject_kind":"endpoint"}

Proof

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

  1. 0x9804bc36e3a7a41577480a92f87610f5e36113144c1f8a32742ffee47d73ab0f
  2. 0x77114c3ef7984d00b263b3e20638802d038cea5d4b2f53bc67df44a781a9c5d1
  3. 0x6501d4967dc2c545c6cb16ea633374846f2f36fc2e459b1d634df8ac78712698
  4. 0x02384371ec882178abcd3bee5333cc65816ce5e81a59ca46d2f8e7d01205f7d4
  5. 0x2d50237e9b4441e6940c3929f64618cbd9891cf02eccd4b57c505e4daacb2e58
  6. 0x93347a5fda856241efaa86457e751b5edc0a3126e1b04789bf8fed8a442d4938
  7. 0x04b4ca52a8aa9115e649746feb6dd6855b1dcf0d06ca68d7382a732b6c118327
  8. 0x6ac6ed86d43a22b3ef77b345ea142c265ff2b06b85b4f1567bb418452e2ba2de
  9. 0xe5be3a21824f275e32299e4311f73c2c279dcdc8dfb099979279d9acf71d7c3e
  10. 0x1c722c9044e8e0376a8ec2ea9b9afc5d86689ca0ab56008144c16e747fb78efb
  11. 0xa5c23f377d8ff4ee53b580cb756ab2bc047f39357bdac89f30099775b7b2ef70
  12. 0x265cee5401cfadc89cfe40c27cc910090736b6a94b8d688bb7729f0791087d26
  13. 0xfe6d2e9a468b7e99de9162a2ef30ac0b0e3b318387b4356bf524493aa67b295b
  14. 0xa3c9c760ee424c178bab782711c2b9d3e15a80a6fde99165972cb75b306bb8b4
  15. 0xb4f7223140c8a36cb87a63d77cf617086d9968dc4658f03e102571ebe06e9ed6
  16. 0xfecf3d4646dd4984a13dd715499e842c3fde63692336d97394c2bfd8e877ca5d
  17. 0xf30fddbf4811226c58e8f0daf36fddd79fc5f1356b592bb1d99a8061ddbabe66
  18. 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON