addrbookFor publishers
← The evidence ledger

Evidence row 223125

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint b0e0bdc7-74ef-4ca5-9b68-0003f02efab0
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
e504d9b53b2ae9e328593faf571f7bdde8dcf077a95bbede0c9e27e59eb836ee
Leaf
0xcb1956f375f7db6f36993b7f7a1410dd4c269329f500d1243f3f350637cc9d6a

What was observed

{
  "count": 11,
  "tools": [
    {
      "description": "Freeze all open events into an immutable invoice (exactly-once).\n    The invoice amount is what agent-escrow-agent should settle.",
      "inputSchema": {
        "properties": {
          "meter_id": {
            "title": "Meter Id",
            "type": "string"
          }
        },
        "required": [
          "meter_id"
        ],
        "title": "close_periodArguments",
        "type": "object"
      },
      "name": "close_period"
    },
    {
      "description": "Create a usage meter between a provider and a consumer agent.\n\n    unit: what is being counted (call, token, kwh, ...). Price is in minor\n    currency units (cents) per unit. Returns the meter_id.",
      "inputSchema": {
        "properties": {
          "consumer": {
            "title": "Consumer",
            "type": "string"
          },
          "currency": {
            "default": "USD",
            "title": "Currency",
            "type": "string"
          },
          "price_minor_per_unit": {
            "title": "Price Minor Per Unit",
            "type": "number"
          },
          "provider": {
            "title": "Provider",
            "type": "string"
          },
          "sla_target": {
            "default": 0.99,
            "title": "Sla Target",
            "type": "number"
          },
          "unit": {
            "title": "Unit",
            "type": "string"
          }
        },
        "required": [
          "provider",
          "consumer",
          "unit",
          "price_minor_per_unit"
        ],
        "title": "create_meterArguments",
        "type": "object"
      },
      "name": "create_meter"
    },
    {
      "description": "Fleet-standard self-description.",
      "inputSchema": {
        "properties": {},
        "title": "describe_agentArguments",
        "type": "object"
      },
      "name": "describe_agent"
    },
    {
      "description": "Admin: flag/unflag a meter as test/synthetic so its events are\n    excluded from usage statistics by default. Touches meter metadata only —\n    never events, never the hash chain, never billing accruals. Requires the\n    server's VIRIDIS_ADMIN_TOKEN.",
      "inputSchema": {
        "properties": {
          "admin_token": {
            "title": "Admin Token",
            "type": "string"
          },
          "is_test": {
            "title": "Is Test",
            "type": "boolean"
          },
          "meter_id": {
            "title": "Meter Id",
            "type": "string"
          },
          "note": {
            "default": "",
            "title": "Note",
            "type": "string"
          }
        },
        "required": [
          "meter_id",
          "is_test",
          "admin_token"
        ],
        "title": "flag_meterArguments",
        "type": "object"
      },
      "name": "flag_meter"
    },
    {
      "description": "Read usage events (paginated, read-only). Filter by meter, provider,\n    consumer_class (internal|external|unknown), channel, outcome (ok|error),\n    and ISO date range [since, until). Test-flagged events are excluded\n    unless include_test=true. Returns events + next_cursor.",
      "inputSchema": {
        "properties": {
          "channel": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Channel"
          },
          "consumer_class": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Consumer Class"
          },
          "cursor": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Cursor"
          },
          "include_test": {
            "default": false,
            "title": "Include Test",
            "type": "boolean"
          },
          "limit": {
            "default": 100,
            "title": "Limit",
            "type": "integer"
          },
          "meter_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Meter Id"
          },
          "outcome": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Outcome"
          },
          "provider": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Provider"
          },
          "since": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Since"
          },
          "until": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Until"
          }
        },
        "title": "list_eventsArguments",
        "type": "object"
      },
      "name": "list_events"
    },
    {
      "description": "List all meters with event/invoice counts.",
      "inputSchema": {
        "properties": {},
        "title": "list_metersArguments",
        "type": "object"
      },
      "name": "list_meters"
    },
    {
      "description": "Record a usage event. Idempotent on event_id (safe to retry — never\n    double-billed). outcome is 'ok' or 'error' and feeds the SLA report.",
      "inputSchema": {
        "properties": {
          "event_id": {
            "title": "Event Id",
            "type": "string"
          },
          "metadata": {
            "anyOf": [
              {
                "additionalProperties": true,
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Metadata"
          },
          "meter_id": {
            "title": "Meter Id",
            "type": "string"
          },
          "outcome": {
            "default": "ok",
            "title": "Outcome",
            "type": "string"
          },
          "quantity": {
            "title": "Quantity",
            "type": "number"
          }
        },
        "required": [
          "meter_id",
          "event_id",
          "quantity"
        ],
        "title": "record_usageArguments",
        "type": "object"
      },
      "name": "record_usage"
    },
    {
      "description": "Pure SLA report: success_rate vs sla_target, breach flag. No mutation.",
      "inputSchema": {
        "properties": {
          "meter_id": {
            "title": "Meter Id",
            "type": "string"
          }
        },
        "required": [
          "meter_id"
        ],
        "title": "sla_reportArguments",
        "type": "object"
      },
      "name": "sla_report"
    },
    {
      "description": "Totals for a meter: event count, total quantity, accrued minor units.",
      "inputSchema": {
        "properties": {
          "meter_id": {
            "title": "Meter Id",
            "type": "string"
          }
        },
        "required": [
          "meter_id"
        ],
        "title": "usage_summaryArguments",
        "type": "object"
      },
      "name": "usage_summary"
    },
    {
      "description": "Usage time series bucketed on each event's recorded_at (UTC;\n    bucket=day|hour), grouped across meters by provider — a real time-series\n    primitive, independent of meter creation times. Includes per-bucket\n    breakdowns by consumer_class / channel / provider. est_accrued_minor is\n    an estimate; authoritative billing stays with usage_summary.",
      "inputSchema": {
        "properties": {
          "bucket": {
            "default": "day",
            "title": "Bucket",
            "type": "string"
          },
          "channel": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Channel"
          },
          "consumer_class": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Consumer Class"
          },
          "include_test": {
            "default": false,
            "title": "Include Test",
            "type": "boolean"
          },
          "meter_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Meter Id"
          },
          "provider": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Provider"
          },
          "since": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Since"
          },
          "until": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Until"
          }
        },
        "title": "usage_timeseriesArguments",
        "type": "object"
      },
      "name": "usage_timeseries"
    },
    {
      "description": "Verify the tamper-evident event hash chain for a meter.",
      "inputSchema": {
        "properties": {
          "meter_id": {
            "title": "Meter Id",
            "type": "string"
          }
        },
        "required": [
          "meter_id"
        ],
        "title": "verify_chainArguments",
        "type": "object"
      },
      "name": "verify_chain"
    }
  ]
}

What the leaf hashes

{"body":"e504d9b53b2ae9e328593faf571f7bdde8dcf077a95bbede0c9e27e59eb836ee","id":223125,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793028515898384,"prev":null,"subject":"b0e0bdc7-74ef-4ca5-9b68-0003f02efab0","subject_kind":"endpoint"}

Proof

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

  1. 0xcb194f571b140fba89ef3e0216a097d43f292bd9f2f61ac5f68f5a59461f3a66
  2. 0x4fa03fff992129578034f21fa14a623df2873914ccc1d8bb3e4ef9e2906d2903
  3. 0x145317365adb813a1437a837ab10ece8fc87ac90c11bd54d2f4d8facf6fad380
  4. 0x44788a2896abee59839d6acbcc33113f8a0e3f5ce596ba93df9d2e1c0de9f7c0
  5. 0x9236d84d81231d4a9c0b677940e514c457ab6239b05793adce4788eb18a42f9c
  6. 0x1f1de0473ac968f7001d96462d922a148611697d3b36e349913d51a0c970856f
  7. 0xa884f134f1fc2a1da10141a1b680601b7df24fa6ab83fab177772209d2c112c1
  8. 0xb6bace605fd360da2c6c73e5667ed2942f4d76802a25f3b3c9e09090cdf8bed2
  9. 0x00fbcc59345b153dcb2b8f8346c33167365a33678310565bab22cd4cf59deac1
  10. 0x9789df0b68a0c56f96db447ac03549df4b97c545b493a676ef441af41eab593b
  11. 0xd854065b5246baf332a9ace158b6f99219183612c97d95e881ab7a7e7fb3bd6b
  12. 0x02a11c0460d1a42b6246e1c715f0c3098d82c39154a56e918e2c22b56ca2c978
  13. 0x985acd37cc044d5aa6ad959194da8e91c81045df83517891ed92f1763a9ab825
  14. 0x5b20d8aab05225a3497eadcce89d2e2a586a510fb31334793d3f46f88f0157c5
  15. 0xe94ca5b798e9899ad611e57835af42266e20f53f44977e487d81365e30972beb
  16. 0x703f95866af09c5e5d6ead7411e9a10f964a41a2aff64d4a55ff0053c023a023
  17. 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON