← The evidence ledger
Evidence row 300781
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint efb0a3cf-77a0-409d-ac7f-2734ce6b854f
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 5e96d4940d59dd8d33f4e9ed7e365535a4b5dbadddd4ff3526e8c3e9e7f30087
- Leaf
- 0xb5701baaa631a374cc9ec24f02076de723465eb7abcd2b2cf7cb2840a68b8900
What was observed
{
"count": 11,
"tools": [
{
"description": "WRITE: create a purchase order with status \"draft\" in Inventory Planner (POST /api/v1/purchase-orders). A draft is only a plan inside Inventory Planner: it is NOT sent to the vendor, NOT saved to any connected system and moves no stock or money. Purchase orders only (no transfers or assembly orders). Each line item is a variant id plus the quantity to order (replenishment).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"currency": {
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"expected_date": {
"description": "Expected delivery date, e.g. 2026-11-15 or 2026-11-15T10:00:00+01:00.",
"maxLength": 40,
"type": "string"
},
"items": {
"items": {
"properties": {
"id": {
"description": "Variant id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"quantity": {
"description": "Quantity to order.",
"exclusiveMinimum": 0,
"maximum": 10000000,
"type": "number"
}
},
"required": [
"id",
"quantity"
],
"type": "object"
},
"maxItems": 500,
"minItems": 1,
"type": "array"
},
"notes": {
"maxLength": 2000,
"type": "string"
},
"reference": {
"description": "Your PO reference.",
"maxLength": 200,
"type": "string"
},
"vendor": {
"description": "The vendor name, as it appears in Inventory Planner.",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"warehouse": {
"description": "The destination warehouse, as it appears in Inventory Planner.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"vendor",
"warehouse",
"items"
],
"type": "object"
},
"name": "inventoryplanner_create_draft_purchase_order"
},
{
"description": "One purchase order, transfer or assembly order by id, with its header fields (reference, status, vendor, warehouse, dates, addresses, totals, notes) and line items. GET /api/v1/purchase-orders/{id}.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"fields": {
"maxLength": 2000,
"pattern": "^[A-Za-z0-9_.,-]+$",
"type": "string"
},
"purchase_order_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"purchase_order_id"
],
"type": "object"
},
"name": "inventoryplanner_get_purchase_order"
},
{
"description": "Whether and how a purchase order was saved to connected systems (ERP, accounting): per connection the status (success, error, run, queued), save_po flag and the PO's id and reference there. Read-only. GET /api/v1/purchase-orders/{id}/connections.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"purchase_order_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"purchase_order_id"
],
"type": "object"
},
"name": "inventoryplanner_get_purchase_order_connections"
},
{
"description": "The stock updates a purchase order has computed: per warehouse (wh) the items with stock_before, delta and error. for_destination false reads the source warehouse of a transfer. Read-only: nothing is pushed. GET /api/v1/purchase-orders/{id}/stock-update.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"for_destination": {
"description": "true (default) = the destination warehouse; false = the source warehouse (transfers only).",
"type": "boolean"
},
"purchase_order_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"purchase_order_id"
],
"type": "object"
},
"name": "inventoryplanner_get_purchase_order_stock_update"
},
{
"description": "One variant by its Inventory Planner id, with the metrics named in `fields` (default: id,sku,lead_time,review_period,replenishment,oos,under_value). GET /api/v1/variants/{id}.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"fields": {
"maxLength": 2000,
"pattern": "^[A-Za-z0-9_.,-]+$",
"type": "string"
},
"variant_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"variant_id"
],
"type": "object"
},
"name": "inventoryplanner_get_variant"
},
{
"description": "One vendor's terms for a variant: cost_price, landing_cost_price, vendor_reference, vendor_name, vendor_packaging (MOQ), uom_ordering. vendor_id is the vendor name in lowercase. GET /api/v1/variants/{id}/vendors/{vendor_id}.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"variant_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"vendor_id": {
"description": "The vendor name in lowercase, as listed by inventoryplanner_list_variant_vendors.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"variant_id",
"vendor_id"
],
"type": "object"
},
"name": "inventoryplanner_get_variant_vendor"
},
{
"description": "The line items of a purchase order: variant id, sku, title, ordered quantity (replenishment), received quantity and received_history, cost price, tax, discount and stock snapshots. GET /api/v1/purchase-orders/{id}/items.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"fields": {
"maxLength": 2000,
"pattern": "^[A-Za-z0-9_.,-]+$",
"type": "string"
},
"limit": {
"description": "Results per page, 1-1000 (default 25).",
"exclusiveMinimum": 0,
"maximum": 1000,
"type": "integer"
},
"page": {
"description": "Page number, counting from 0 (default 0). Pass the previous reply's next_page.",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"purchase_order_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"purchase_order_id"
],
"type": "object"
},
"name": "inventoryplanner_list_purchase_order_items"
},
{
"description": "List stock orders: purchase orders, transfers and assembly orders (the `type` field is \"po\"/empty, \"transfer\" or \"assembly\"). Filter with `filters`, e.g. {\"status\": \"OPEN\", \"vendor\": \"Acme\", \"expected_date_lt\": \"2026-11-01\"}. Default fields: id,reference,status,type,vendor,warehouse,source,created_date,expected_date,received_date,currency,total,total_ordered,total_received. GET /api/v1/purchase-orders.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"fields": {
"maxLength": 2000,
"pattern": "^[A-Za-z0-9_.,-]+$",
"type": "string"
},
"filters": {
"additionalProperties": {
"anyOf": [
{
"maxLength": 500,
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
]
},
"description": "Filters, as {\"<field>\": value} or {\"<field>_<operator>\": value}. Operators: eq (default), eqi (case-insensitive), ne, gt, gte, lt, lte, range (\"5-10\"), match (regex), in (comma-separated). Example: {\"replenishment_gt\": 0, \"sku_match\": \"^TSHIRT\"}.",
"propertyNames": {
"pattern": "^[A-Za-z0-9_]{1,80}$",
"type": "string"
},
"type": "object"
},
"limit": {
"description": "Results per page, 1-1000 (default 25).",
"exclusiveMinimum": 0,
"maximum": 1000,
"type": "integer"
},
"page": {
"description": "Page number, counting from 0 (default 0). Pass the previous reply's next_page.",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"sort": {
"description": "Sort by one field, e.g. {\"field\": \"under_value\", \"direction\": \"desc\"}.",
"properties": {
"direction": {
"default": "asc",
"enum": [
"asc",
"desc"
],
"type": "string"
},
"field": {
"pattern": "^[A-Za-z0-9_]{1,80}$",
"type": "string"
}
},
"required": [
"field"
],
"type": "object"
}
},
"type": "object"
},
"name": "inventoryplanner_list_purchase_orders"
},
{
"description": "The vendors a variant can be ordered from, with cost_price, landing_cost_price, vendor_reference (vendor SKU), vendor_name, vendor_packaging (MOQ) and uom_ordering. GET /api/v1/variants/{id}/vendors.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"variant_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"variant_id"
],
"type": "object"
},
"name": "inventoryplanner_list_variant_vendors"
},
{
"description": "List product variants with Inventory Planner's computed metrics (forecast, replenishment, days to sell out, lost revenue, lead time, review period and ~200 more). Always pass `fields` to pick the metrics you need (default: id,sku,lead_time,review_period,replenishment,oos,under_value; oos = forecasted days to sell out, under_value = forecasted lost revenue, replenishment = recommended order quantity). Use `filters` and `sort` for questions like \"which SKUs need reordering\". Removed variants are excluded unless include_removed. GET /api/v1/variants.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"fields": {
"maxLength": 2000,
"pattern": "^[A-Za-z0-9_.,-]+$",
"type": "string"
},
"filters": {
"additionalProperties": {
"anyOf": [
{
"maxLength": 500,
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
]
},
"description": "Filters, as {\"<field>\": value} or {\"<field>_<operator>\": value}. Operators: eq (default), eqi (case-insensitive), ne, gt, gte, lt, lte, range (\"5-10\"), match (regex), in (comma-separated). Example: {\"replenishment_gt\": 0, \"sku_match\": \"^TSHIRT\"}.",
"propertyNames": {
"pattern": "^[A-Za-z0-9_]{1,80}$",
"type": "string"
},
"type": "object"
},
"include_removed": {
"type": "boolean"
},
"limit": {
"description": "Results per page, 1-1000 (default 25).",
"exclusiveMinimum": 0,
"maximum": 1000,
"type": "integer"
},
"page": {
"description": "Page number, counting from 0 (default 0). Pass the previous reply's next_page.",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"sort": {
"description": "Sort by one field, e.g. {\"field\": \"under_value\", \"direction\": \"desc\"}.",
"properties": {
"direction": {
"default": "asc",
"enum": [
"asc",
"desc"
],
"type": "string"
},
"field": {
"pattern": "^[A-Za-z0-9_]{1,80}$",
"type": "string"
}
},
"required": [
"field"
],
"type": "object"
}
},
"type": "object"
},
"name": "inventoryplanner_list_variants"
},
{
"description": "WRITE: change the reference, expected date or notes of a purchase order that is still a draft (PATCH /api/v1/purchase-orders/{id}). The order is read first and refused unless its status is \"draft\". It never changes the status, sends the order, or touches line items or received quantities.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"expected_date": {
"description": "Expected delivery date, e.g. 2026-11-15 or 2026-11-15T10:00:00+01:00.",
"maxLength": 40,
"type": "string"
},
"notes": {
"maxLength": 2000,
"type": "string"
},
"purchase_order_id": {
"description": "Inventory Planner id.",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"reference": {
"maxLength": 200,
"type": "string"
}
},
"required": [
"purchase_order_id"
],
"type": "object"
},
"name": "inventoryplanner_update_draft_purchase_order"
}
]
}What the leaf hashes
{"body":"5e96d4940d59dd8d33f4e9ed7e365535a4b5dbadddd4ff3526e8c3e9e7f30087","id":300781,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793053648426538,"prev":null,"subject":"efb0a3cf-77a0-409d-ac7f-2734ce6b854f","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0xb57061519a38c6c4a100093ce0c49da1ee439e3678076f3d4098b39463031662
- 0x32172b87b74bbddac670fd33b921ea598aefa880a3c1915d59949e93bca83877
- 0x98cf3f8c4ce0ee9d1e0bcfce3e78a13609162d5608e5aff892ed85c95d05b709
- 0xd15dec09d84d91a5435e2a55f7802119c885a62442adf559ba1ad784e47f99a5
- 0x466e2e843fc6869fbe378780a24f06ee4f3f7da316e660850e3ce832c117e114
- 0x3eb93501ebe84bcbcd89aca2101e5fa6d23d095ecb938d003c9ab82fa4a44b2d
- 0xa8d7baed445e44745b9c498c750e6071c43b53bc201e461accd753053d55eb58
- 0x4f70df97b82c43afef4dd705029249c95dc129b13ba5931b2741df080a73e5b4
- 0x4a395832b96531e5dad890a69b905731226c55bcaecd7094b9976c1e1861cde9
- 0x29d8926a104518c165350885a541887278c9813fe33bc83e56dff05bb21358ce
- 0x0f199646652e20987f8f0e4e8bd21993538b0737cd758d5cbc6ebcaaa02763a3
- 0x7a0f1751de1946feff7d8c8afc737dcc4d35f110809c15aa0fdb8363a9e31b2b
- 0x0d86419ca1dd0b62fd8b22ea2e8c74d441312cec3116a467bea429b43e026565
- 0x083427e39db4dd470662401f6db5db8fadf084fc4274cf8621b368416952b78b
- 0x1a74ed3b3756b9cd946da49701bcec120ec88645013da99fa9eea60b39e1a570
- 0x123ec8bee20ddc55223eeef5a4f4d6c4b6416515adbb911c56759f5cde56e452
- 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
- 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae