← The evidence ledger
Evidence row 292679
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 4856efc0-1cd0-417a-8a94-f6dd1f06a0b9
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 5e8fb282eb4789ed88dec3d0a7d899ea3c80ce4b902b9b388bbe3d5b71674058
- Leaf
- 0x87b9b4a4c4f9ccb8981b956733faffea8906cfb8ba8b82669597b42c4d991544
What was observed
{
"count": 11,
"tools": [
{
"description": "Create a goods-receipt note (GRN) against an open purchase order. Give one cell per PO line: the whole units received and/or damaged. received is checked against the line's ordered quantity and the PO's over tolerance; receiving past the over tolerance is refused unless declared damaged. Shortage is recorded automatically (ordered minus received, floored at zero) and shown as a discrepancy. Partial deliveries are fine: raise several GRNs against the same PO. Free tier, full CRUD.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"carrier": {
"description": "Delivered by",
"maxLength": 60,
"type": "string"
},
"lines": {
"description": "Which PO lines you are receiving now",
"items": {
"additionalProperties": false,
"properties": {
"damageNote": {
"description": "What was damaged",
"maxLength": 400,
"type": "string"
},
"damaged": {
"description": "Whole units received but damaged",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"line": {
"description": "PO line to receive, e.g. L01",
"maxLength": 40,
"type": "string"
},
"received": {
"description": "Whole units of good stock",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"shortage": {
"description": "Whole units short; when you know the count",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"shortageNote": {
"description": "Why it is short",
"maxLength": 400,
"type": "string"
}
},
"required": [
"line",
"received"
],
"type": "object"
},
"maxItems": 200,
"minItems": 1,
"type": "array"
},
"note": {
"description": "Memo for the whole GRN",
"maxLength": 400,
"type": "string"
},
"po": {
"description": "Purchase-order id or reference, e.g. PO-0001",
"maxLength": 40,
"type": "string"
},
"receivedAt": {
"description": "ISO date of physical receipt (default today)",
"maxLength": 10,
"type": "string"
}
},
"required": [
"po",
"lines"
],
"type": "object"
},
"name": "grn_add"
},
{
"description": "Close an open GRN. A closed GRN can no longer take lines, and its discrepancies are treated as resolved. Closing is free-tier and never mutates the PO.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"grn": {
"description": "Open GRN id, e.g. GRN-0001",
"maxLength": 40,
"type": "string"
}
},
"required": [
"grn"
],
"type": "object"
},
"name": "grn_close"
},
{
"description": "List lines that are not as ordered: damaged units, a declared shortage, or received below the PO line's under tolerance. Optionally filter to one PO.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"includeResolved": {
"default": false,
"description": "Include GRNs that are closed (resolved)",
"type": "boolean"
},
"po": {
"description": "Only discrepancies on this purchase order",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "grn_discrepancy"
},
{
"description": "Pro. Export every GRN (or just one PO's GRNs) as CSV with a header row: grn,po,po_reference,received_at,carrier,status,line,sku,received,damaged,shortage,damage_note,shortage_note. Watermark-free and not truncated.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"po": {
"description": "Export GRNs for one purchase order only",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "grn_export_csv"
},
{
"description": "Get a single goods-receipt note by id, with its lines, damage and shortage per line.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"grn": {
"description": "GRN id, e.g. GRN-0001",
"maxLength": 40,
"type": "string"
}
},
"required": [
"grn"
],
"type": "object"
},
"name": "grn_get"
},
{
"description": "Add another PO line (or more units on a line already open on this GRN) to an existing open goods-receipt note. Useful when one delivery arrives in batches. The over-tolerance gate still applies to the PO line's cumulative received count across every GRN. Free tier, full CRUD.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"damageNote": {
"description": "What was damaged",
"maxLength": 400,
"type": "string"
},
"damaged": {
"description": "Whole units received but damaged",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"grn": {
"description": "Open GRN id, e.g. GRN-0001",
"maxLength": 40,
"type": "string"
},
"line": {
"description": "PO line to receive, e.g. L01",
"maxLength": 40,
"type": "string"
},
"received": {
"description": "Whole units of good stock",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"shortageNote": {
"description": "Why it is short",
"maxLength": 400,
"type": "string"
}
},
"required": [
"grn",
"line",
"received"
],
"type": "object"
},
"name": "grn_line_add"
},
{
"description": "List goods-receipt notes, newest first, optionally filtered to one purchase order.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"includeLines": {
"default": false,
"description": "Include line detail",
"type": "boolean"
},
"po": {
"description": "Only GRNs against this purchase order",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "grn_list"
},
{
"description": "Reconcile every purchase order against every GRN: open POs (not yet fully received), POs fully received within tolerance, POs with at least one discrepancy, and per-line open/short/damaged counts. Nothing is written.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"includeOnlyDiscrepancies": {
"default": false,
"description": "Only list POs with at least one discrepancy",
"type": "boolean"
}
},
"type": "object"
},
"name": "grn_status_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"
},
{
"description": "Create a purchase order to receive goods against. Lines carry a sku, a description and an ordered whole-unit quantity. Over/under tolerances are whole percentages allowed above/below ordered before a GRN is flagged. Ids look like PO-0001. Free tier, full CRUD.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"lines": {
"description": "Lines on this purchase order",
"items": {
"additionalProperties": false,
"properties": {
"description": {
"description": "What it is",
"maxLength": 160,
"type": "string"
},
"ordered": {
"description": "Whole units ordered",
"maximum": 1000000,
"minimum": 1,
"type": "integer"
},
"sku": {
"description": "Stock-keeping unit / model code",
"maxLength": 40,
"type": "string"
}
},
"required": [
"sku",
"description",
"ordered"
],
"type": "object"
},
"maxItems": 200,
"minItems": 1,
"type": "array"
},
"overTolerancePct": {
"default": 10,
"description": "Whole % extra allowed above ordered (default 10)",
"maximum": 100,
"minimum": 0,
"type": "integer"
},
"reference": {
"description": "Your own purchase-order number",
"maxLength": 60,
"type": "string"
},
"supplier": {
"description": "Who you ordered from",
"maxLength": 60,
"type": "string"
},
"underTolerancePct": {
"default": 10,
"description": "Whole % short allowed below ordered (default 10)",
"maximum": 100,
"minimum": 0,
"type": "integer"
}
},
"required": [
"reference",
"supplier",
"lines"
],
"type": "object"
},
"name": "po_add"
}
]
}What the leaf hashes
{"body":"5e8fb282eb4789ed88dec3d0a7d899ea3c80ce4b902b9b388bbe3d5b71674058","id":292679,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793048903501941,"prev":null,"subject":"4856efc0-1cd0-417a-8a94-f6dd1f06a0b9","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0x87b999e66da3ce2b0e5a470a257b64caf900afcf965301daf1e71739c173c18e
- 0x47b6d4082f87bee7083df726c4382c87381f747273283f64edb289086fab9c68
- 0x405b113c64c2229ab2c657894c2824a8cf8bf1e7715fd3c0393f54cacba75032
- 0x71d7bde4bffb5eb56a4b0744b11a5d87076524e46ce5dae71b3d70db239c0204
- 0x49a5a8dba0ace9e696019f120f7677e4150badec9be5b0b4c7818faddff985dc
- 0xb7f00c88bbf749920184831aaa824e9846f7be9e3591d5bdd145d4e5ce741d05
- 0x706ade3fc95fc31f0369a3ef88ba8cec310bad425afef3b009212e13ec9b8f65
- 0x858d0e4e5396e8c56717334acbaf20c63e2f671cc964c80685435196f1c78328
- 0x839abfa1824d480bed5cc8d80800127bd639ede8584876e29d2899c3132f94a9
- 0xe0e4a60716d95ec12c35a9b9e1bff1012120a026fa97f38064a594590f5c029f
- 0xab0c5c1fde083e427b8955a771d679773808751fc069bed2944e88e84fcb655e
- 0x099dd43573993f2a1bea674129b7ed050429a0ac76c3bfda8aaf82a3af126469
- 0x49d11be052a4c069b10250aaba214f566b3f2e5aaa7a98e82ccc6a71c0e801a0
- 0x78ac2b34737774659a6a411f4d10b8ba570d40699d9f277321c3a32ff03d1dc9
- 0x7eb603d37f0f22dae1ea013e391889906ffc0139ff26e25b044bee38eec8f9b2
- 0x2b6e23e3624a1b66e1d2298cfbce99a93ce6b13d24a58112a71802d79c5f7a76
- 0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9
- 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae