addrbookFor publishers
← The evidence ledger

Evidence row 579167

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 4c387910-78a6-4b03-8abf-f594d44e9f7d
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
c782c45f52438972d93c714a7eadeb9713b4a5e140aae4f61d2ee835aa1de97d
Leaf
0xa7c8b8e4b77fb495bceba79b413b34d6e9dc8a303d3c50d0f818944328687dc4

What was observed

{
  "count": 11,
  "tools": [
    {
      "description": "Creates a governed commitment between a buyer and a seller and persists it to the SAAX commitment store. The commitment is settlement-rail-neutral: settlementRail is metadata only (x402, mpp, ap2, acp, or unspecified) and is NEVER a prerequisite. Returns the new commitment id (saax_<hash>), createdAt, status, and the settlementRail. Call this BEFORE any payment flow to establish the governed commitment record. Once created, use get_commitment to read the manifest.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "acceptanceCriteria": {
            "description": "Objective acceptance criteria for fulfillment",
            "items": {
              "type": "string"
            },
            "minItems": 1,
            "type": "array"
          },
          "buyerId": {
            "description": "The buyer's identity: 0x-address or agent id",
            "type": "string"
          },
          "evidenceRequirements": {
            "description": "Evidence the seller must supply",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "recoveryPolicy": {
            "description": "Recovery policy on failure",
            "properties": {
              "compensationPercent": {
                "type": "string"
              },
              "maxRetries": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "refundOnFailure": {
                "type": "boolean"
              }
            },
            "required": [
              "refundOnFailure"
            ],
            "type": "object"
          },
          "sellerId": {
            "description": "The seller's identity: 0x-address or agent id",
            "type": "string"
          },
          "settlementRail": {
            "default": "unspecified",
            "description": "The settlement rail as metadata. Never a prerequisite; 'unspecified' is valid.",
            "enum": [
              "x402",
              "mpp",
              "ap2",
              "acp",
              "unspecified"
            ],
            "type": "string"
          },
          "terms": {
            "description": "The commercial terms: deliverable, price, deadline",
            "properties": {
              "deadline": {
                "description": "ISO-8601 deadline for fulfillment",
                "type": "string"
              },
              "deliverable": {
                "description": "The deliverable / capability description",
                "type": "string"
              },
              "price": {
                "properties": {
                  "amount": {
                    "description": "Price amount as a decimal string, e.g. '0.10'",
                    "type": "string"
                  },
                  "currency": {
                    "description": "Currency symbol, e.g. USDC",
                    "type": "string"
                  },
                  "decimals": {
                    "description": "Asset decimals (USDC = 6)",
                    "maximum": 9007199254740991,
                    "minimum": 0,
                    "type": "integer"
                  }
                },
                "required": [
                  "amount",
                  "currency",
                  "decimals"
                ],
                "type": "object"
              }
            },
            "required": [
              "deliverable",
              "price",
              "deadline"
            ],
            "type": "object"
          }
        },
        "required": [
          "buyerId",
          "sellerId",
          "terms",
          "acceptanceCriteria"
        ],
        "type": "object"
      },
      "name": "create_commitment"
    },
    {
      "description": "Validates an authority proof against a commitment. Requires an active SAAX Premium subscription. For evidence verification, use get_evidence_verification.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "commitment": {
            "description": "The commitment or requested action the proof must authorize"
          },
          "proof": {
            "description": "The AuthorityProof object (proofType, issuer, subject, scope, validFrom, validUntil, signature, verificationScheme, verificationMaterial)"
          },
          "subscriptionEmail": {
            "description": "The subscription email (must have an active SAAX Premium subscription)",
            "type": "string"
          }
        },
        "required": [
          "subscriptionEmail",
          "proof",
          "commitment"
        ],
        "type": "object"
      },
      "name": "get_authority_validation"
    },
    {
      "description": "Returns the full commitment object for a given commitment ID — including terms, state, manifest hash, and evidence references. Call this when an agent needs the complete commitment record. For status-only polling, use get_commitment_status. For listing all commitments for a subscriber, use list_commitments.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "commitmentId": {
            "description": "The commitment id (0x-prefixed or agent-id style) to look up",
            "type": "string"
          }
        },
        "required": [
          "commitmentId"
        ],
        "type": "object"
      },
      "name": "get_commitment"
    },
    {
      "description": "Returns only the current lifecycle state for a given commitment ID, plus the recommended next action for the calling agent. Call this before retrying any commitment that timed out — an unknown outcome is a status check, not another POST. The next_action field tells the agent whether to retry, poll, or stop. For the full commitment record, use get_commitment.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "commitmentId": {
            "description": "The commitment id to poll for its lifecycle state",
            "type": "string"
          }
        },
        "required": [
          "commitmentId"
        ],
        "type": "object"
      },
      "name": "get_commitment_status"
    },
    {
      "description": "Verifies external evidence against a commitment's acceptance criteria. Requires an active SAAX Premium subscription. For authority proof validation, use get_authority_validation.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "commitment": {
            "description": "The commitment object the evidence binds to"
          },
          "criterion": {
            "description": "The verification policy / acceptance criterion"
          },
          "evidence": {
            "description": "The evidence object (evidenceId, evidenceType, issuer, subject, payload, payloadHash, signature, verificationScheme, commitmentId, acceptanceCriterionId, ...)"
          },
          "subscriptionEmail": {
            "description": "The subscription email (must have an active SAAX Premium subscription)",
            "type": "string"
          }
        },
        "required": [
          "subscriptionEmail",
          "evidence",
          "commitment",
          "criterion"
        ],
        "type": "object"
      },
      "name": "get_evidence_verification"
    },
    {
      "description": "Returns the SAAX Protocol version, available capability count, and the URL to the specification. Call this when an agent needs a one-time overview of the protocol. For pricing, use get_routing_fee. For the full capability list, use list_capabilities. For a liveness check, use ping.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "get_protocol_info"
    },
    {
      "description": "Returns the current routing fee schedule. Call this before initiating a routing request to determine the expected cost. For capability discovery, use list_capabilities. For protocol overview, use get_protocol_info.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "get_routing_fee"
    },
    {
      "description": "Returns the capabilities currently indexed by the SAAX Router, with supplier counts per capability. Call this to discover what can be routed. For pricing of a specific capability, use get_routing_fee. For protocol overview, use get_protocol_info.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "list_capabilities"
    },
    {
      "description": "Returns all commitments associated with a subscription email. Requires an active SAAX Premium subscription. Call this to retrieve commitment history for a subscriber. For a single commitment by ID, use get_commitment. For status-only checks, use get_commitment_status.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "subscriptionEmail": {
            "description": "The subscription email (must have an active SAAX Premium subscription)",
            "type": "string"
          }
        },
        "required": [
          "subscriptionEmail"
        ],
        "type": "object"
      },
      "name": "list_commitments"
    },
    {
      "description": "Returns a lightweight liveness response. Call this to verify the endpoint is reachable. Do not use for discovery, capability listing, or pricing — use get_protocol_info, list_capabilities, or get_routing_fee instead.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "ping"
    },
    {
      "description": "Submits a capability request and returns ranked supplier matches. Commitment creation with payment runs through the HTTP POST /route endpoint, not this tool. Use list_capabilities first to discover available capabilities. For commitment lookup after routing, use get_commitment.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "budget": {
            "description": "Maximum budget in USDC the buyer will pay",
            "type": "number"
          },
          "capability": {
            "description": "The capability demanded, e.g. 'security scan'",
            "type": "string"
          },
          "deadline": {
            "description": "Deadline in seconds from now for delivery",
            "type": "number"
          }
        },
        "required": [
          "capability"
        ],
        "type": "object"
      },
      "name": "route_request"
    }
  ]
}

What the leaf hashes

{"body":"c782c45f52438972d93c714a7eadeb9713b4a5e140aae4f61d2ee835aa1de97d","id":579167,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793143323457265,"prev":null,"subject":"4c387910-78a6-4b03-8abf-f594d44e9f7d","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. 0xa7c8bb27c579d702a1ed0327d8313003eccf6bec89f830b54c2390422a58fa2d
  2. 0xeeb295a6428b8a68134c186cd9e05b096a4e4b22d93fcd239a9a6729112dd821
  3. 0xaf343dee416bdb2cc31d3f696b2c51f555b352dfb299310546e7ab00cbb7bd61
  4. 0xfa0018a4d43b86e6fdd0908beaaa6d36362bd1a82f9f5678953570a69029115e
  5. 0x72823bf2170c9599dec00e41cdf6fceda3243e62820f448ad45faf9df16fffd2
  6. 0xbfb3628d64d8cdc795a3bc9cb28644a5b77974ea92999db191a3f9897cc7a128
  7. 0xff72efe8f2bd5c756a3fa46c0de1e2f74b2749a6beeee8b2b925a3e30d405844
  8. 0x4e52d88fef23bda3cd3655f120e1ec538f867433c94bc105d8c408eb8f86c9c6
  9. 0x8840697262cbf9800d5d706972c243674052e4afded2fdaa750be942d675a693
  10. 0x6d1531902ccbd49f5cdbe8417d2f6bff2c9149bee4291d4796657fb912648fa8
  11. 0xd2aa44cc055bcdb3ddafd2370919a57805f054c24aa9409ec35ce2603240def3
  12. 0xa08d28946903c13551b0c68269e38bfa91b368f8e33183ac691c11e2b5a9506a
  13. 0xb37156a04839055daed26674da38864f8dae598cab9742c6fb3e74eb3178f2d4
  14. 0x0644f7e2a4b5bf9b66f185cc3fbb766d456ad94490183852f4c6db5855114cc5
  15. 0xa3fff4662cd48659f5bafd0612931759a90e53a7b4209ed8f26f6594a07bb547
  16. 0x64c405a28e8819716221eb2529fe4ce277ab08025e17e685cbd5ece75ceb75c7
  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