addrbookFor publishers
← The evidence ledger

Evidence row 292682

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint c46f5e7f-cef9-425a-8512-2067a8fde55c
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
02f9d7de6fe2c695fa313e7e7147d37a0a30eb16de8de6bf8fc1fdbc2f8f0e83
Leaf
0xf53d4b8375f3483f423dfbd17c73287f6f9e8d3b07e79b1cd50b411b269a5097

What was observed

{
  "count": 11,
  "tools": [
    {
      "description": "Apply part of a held deposit to one invoice: it records that amount as a PAYMENT through the invoice server. amount_minor defaults to the lesser of held and owed. More than either, or a pre-arrival date, is refused.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "amount_minor": {
            "description": "How much of the deposit to apply, in minor units. Defaults to the smaller of what is held and what the invoice still owes",
            "exclusiveMinimum": 0,
            "maximum": 1000000000000,
            "type": "integer"
          },
          "date": {
            "description": "YYYY-MM-DD, the day the deposit was set against the invoice. Defaults to today",
            "type": "string"
          },
          "id": {
            "description": "Deposit id such as DEP-2026-0001, or an exact client name",
            "minLength": 1,
            "type": "string"
          },
          "invoice": {
            "description": "The invoice number to apply it to, e.g. INV-2026-0001",
            "minLength": 1,
            "type": "string"
          },
          "note": {
            "description": "Free text kept on the application row",
            "maxLength": 10000,
            "type": "string"
          }
        },
        "required": [
          "id",
          "invoice"
        ],
        "type": "object"
      },
      "name": "deposit_apply"
    },
    {
      "description": "Answer \"how much of theirs am I holding?\" for one client or everyone: received, applied to invoices, refunded and still held, one row per currency, never added across them. Reads only; deposit_list shows each deposit.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "as_of": {
            "description": "YYYY-MM-DD, count only deposits received on or before this day",
            "type": "string"
          },
          "client": {
            "description": "Client id, exact name or a name containing this text. Leave out for every client",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "deposit_balance"
    },
    {
      "description": "Delete a deposit that never moved money, freeing that month's free-tier slot. One with anything applied or refunded is refused, naming it, since a payment or refund would be left with nothing behind it.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Deposit id such as DEP-2026-0001, or an exact client name",
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "deposit_delete"
    },
    {
      "description": "List deposits newest first: DEP number, client, kind, date, reference and what was received, applied, refunded and still held, with the same four totalled per currency. Filter by client, status, kind, date.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "client": {
            "description": "Only deposits for this client id, exact name, or a name containing this text",
            "type": "string"
          },
          "from": {
            "description": "YYYY-MM-DD, earliest received date",
            "type": "string"
          },
          "kind": {
            "description": "Default \"all\"",
            "enum": [
              "security",
              "retainer",
              "all"
            ],
            "type": "string"
          },
          "status": {
            "description": "Default \"all\". held means some of the money is still held",
            "enum": [
              "held",
              "applied",
              "refunded",
              "all"
            ],
            "type": "string"
          },
          "to": {
            "description": "YYYY-MM-DD, latest received date",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "deposit_list"
    },
    {
      "description": "Record a security or retainer deposit received from a client, in minor units, with its currency, the date it arrived and the bank reference. Returns the DEP-YYYY-NNNN id.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "amount_minor": {
            "description": "What was received, in MINOR units: 50000 = 500.00 EUR, 50000 = JPY 50000. Never a decimal",
            "exclusiveMinimum": 0,
            "maximum": 1000000000000,
            "type": "integer"
          },
          "client": {
            "description": "Client name or client id. A name the invoice server already knows brings its address, email and VAT id onto the deposit",
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          },
          "client_address": {
            "description": "Postal address for the statement's client block, newlines allowed",
            "maxLength": 2000,
            "type": "string"
          },
          "client_email": {
            "description": "Only if the user gave it; otherwise the stored client's email is used",
            "maxLength": 320,
            "type": "string"
          },
          "client_vat_id": {
            "description": "Client VAT / tax registration id",
            "maxLength": 64,
            "type": "string"
          },
          "currency": {
            "description": "Defaults to your business default currency",
            "pattern": "^[A-Za-z]{3}$",
            "type": "string"
          },
          "kind": {
            "description": "security: held against damage or non-payment. retainer: held against work not yet invoiced",
            "enum": [
              "security",
              "retainer"
            ],
            "type": "string"
          },
          "notes": {
            "description": "Free text kept on the record and printed on the statement",
            "maxLength": 10000,
            "type": "string"
          },
          "received_date": {
            "description": "YYYY-MM-DD, the day the money arrived. Defaults to today",
            "type": "string"
          },
          "reference": {
            "description": "Bank reference, transfer note or cheque number the money arrived with",
            "maxLength": 200,
            "type": "string"
          }
        },
        "required": [
          "client",
          "amount_minor",
          "kind"
        ],
        "type": "object"
      },
      "name": "deposit_record"
    },
    {
      "description": "Give part or all of a held deposit back to the client, with the date and how it was sent. Refuses more than is still held. The invoice server is not touched: a refund is not a payment.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "amount_minor": {
            "description": "How much to give back, in minor units. Defaults to everything still held",
            "exclusiveMinimum": 0,
            "maximum": 1000000000000,
            "type": "integer"
          },
          "date": {
            "description": "YYYY-MM-DD, the day the money went back. Defaults to today",
            "type": "string"
          },
          "id": {
            "description": "Deposit id such as DEP-2026-0001, or an exact client name",
            "minLength": 1,
            "type": "string"
          },
          "method": {
            "description": "How it was sent, e.g. \"bank transfer to the account it came from\". Printed on the statement",
            "maxLength": 200,
            "type": "string"
          },
          "note": {
            "description": "Free text kept on the refund row",
            "maxLength": 10000,
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "deposit_refund"
    },
    {
      "description": "Call this tool to render one client's A4 deposit statement and return a download link valid for one hour. Titled DEPOSIT STATEMENT, every movement in date order, closing with what is still held. Pro.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "as_of": {
            "description": "YYYY-MM-DD printed as the statement date. Defaults to today",
            "type": "string"
          },
          "client": {
            "description": "Client id, exact name or a name containing this text",
            "minLength": 1,
            "type": "string"
          },
          "currency": {
            "description": "Only needed when the client has deposits in more than one currency",
            "pattern": "^[A-Za-z]{3}$",
            "type": "string"
          },
          "out_path": {
            "description": "Name for the downloaded file, e.g. acme-deposits. Defaults to the client and currency; the statement comes back as a download link valid for one hour",
            "type": "string"
          }
        },
        "required": [
          "client"
        ],
        "type": "object"
      },
      "name": "deposit_statement_pdf"
    },
    {
      "description": "Turn one client's deposits into a plain-text statement to paste into an email: every movement in date order and the closing balance held. Pass currency when they have more than one. Also a .txt download link valid one hour. Free on every tier.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "as_of": {
            "description": "YYYY-MM-DD printed as the statement date. Defaults to today",
            "type": "string"
          },
          "client": {
            "description": "Client id, exact name or a name containing this text",
            "minLength": 1,
            "type": "string"
          },
          "currency": {
            "description": "Only needed when the client has deposits in more than one currency",
            "pattern": "^[A-Za-z]{3}$",
            "type": "string"
          },
          "greeting": {
            "description": "Opening line, default \"Hello\" plus the client name",
            "type": "string"
          },
          "sign_off": {
            "description": "Closing line, default your business name from the shared profile",
            "type": "string"
          }
        },
        "required": [
          "client"
        ],
        "type": "object"
      },
      "name": "deposit_statement_text"
    },
    {
      "description": "The deposit book at a date: held per currency, received, applied and refunded, the oldest holdings with days held, and every deposit older than N days with nothing applied. Pro; deposit_balance is free.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "as_of": {
            "description": "YYYY-MM-DD to count from. Defaults to today",
            "type": "string"
          },
          "limit": {
            "description": "How many oldest held deposits to list. Default 10",
            "maximum": 200,
            "minimum": 1,
            "type": "integer"
          },
          "older_than_days": {
            "description": "Flag deposits received this many days ago or more with nothing applied. Default 90",
            "maximum": 36500,
            "minimum": 0,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "deposits_report"
    },
    {
      "description": "Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "key": {
            "description": "License key from checkout, MCPL1.<payload>.<signature>",
            "type": "string"
          }
        },
        "required": [
          "key"
        ],
        "type": "object"
      },
      "name": "license_activate"
    },
    {
      "description": "Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "license_status"
    }
  ]
}

What the leaf hashes

{"body":"02f9d7de6fe2c695fa313e7e7147d37a0a30eb16de8de6bf8fc1fdbc2f8f0e83","id":292682,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793048914043106,"prev":null,"subject":"c46f5e7f-cef9-425a-8512-2067a8fde55c","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. 0xf53ce2710cbf60efe00f7124cadf9c113429c9465f698fdbd3fab71eee20d113
  2. 0x1b38a566e6077bf77bdf12c755de9b98d76724f00faff5cdab7a958d0661108a
  3. 0x218f807255cbf5bfd139ec1e909ec5d3bfb2b729630b34642b302e484536f137
  4. 0x6d2733d4e30c3f7c8a92b1db23fee362e23b28d805f91b95c1de27a6fe719f69
  5. 0xc2fba0516969e0b3ba410111f1eb460f00acb353f0bdf8b5da08aacc76064fd5
  6. 0xe847e6d3596ee675a8aa79b92cbfced635fbec6c0ffb6af2a04c1e8bce01692d
  7. 0x09a740d09397b15c20522395e740a4969efb497e3c24db2c32f7f6b921db8b4a
  8. 0x26f07f0af4c8911df13cb157ee560f9e1ce16c07dd41975c492712e6680d048f
  9. 0x3d82e9ada7c7d17c361b62c6ce33f9647e7db0d1c163d3a3aa6538d4c298b9bd
  10. 0xf7bdc34efb83dc5cbbcb5071558fe87a477728e005b9d180c492e090371b2357
  11. 0xd1f6cbd0d3ee44ebe2e23b42e7f1822bbdf0afd342375323b5d4f8bc89cd943a
  12. 0x86ae35463d854f3938d986999aa8497e14f0ba2aa6f39a269e1e6d1134f9b847
  13. 0x79695e4356ea25a2b58265a824698704cd2c743099ce2dca9e41384ce8f1a8c5
  14. 0xd769d41500075835c3b2f9184d223699fb983fd05c29fbcb44d964abc7ee380d
  15. 0x68d296b1e00b4899fb83c3fba36fffaefa311eac2903067dbebfe776a12b4a9a
  16. 0x5fb5dda563336cd1bc1b9f44c52b76237ae72ed2145cb9290f39f304ca7dd678
  17. 0x74a0a08e4e7ab9aa5bfbead33dec7e1c7e8e364cff69a63720d764bbe987aadc
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON