← The evidence ledger
Evidence row 275521
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 1965a3c9-e475-4048-993a-844037428f7b
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- a18fd7d3229362cd89e4ac22a152731cd74cea8eefd67c125fba87848e1d2ca3
- Leaf
- 0xa21b2fe1d0e8223098464054a6b5e55d1d42cb16574a5fe32f6534577b308bbb
What was observed
{
"count": 8,
"tools": [
{
"description": "Export the current WorkPaper JSON document for persistence, review, or handoff to another agent. Does not write files by itself.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"includeConfig": {
"default": true,
"description": "Include workbook configuration metadata in the exported JSON. Defaults to true.",
"type": "boolean"
}
},
"type": "object"
},
"name": "export_workpaper_document"
},
{
"description": "Return the formatted display string for one cell. Use when an agent needs what a user would see, not the raw numeric value.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"address": {
"description": "Single A1 cell address such as B3.",
"type": "string"
},
"sheetName": {
"description": "Existing sheet name.",
"type": "string"
}
},
"required": [
"sheetName",
"address"
],
"type": "object"
},
"name": "get_cell_display_value"
},
{
"description": "Discover sheet names and used dimensions before reading or editing a WorkPaper. Returns metadata only; use read_range or read_cell for values.",
"inputSchema": {
"additionalProperties": false,
"type": "object"
},
"name": "list_sheets"
},
{
"description": "Read one cell with calculated value, display text, formula text, formula diagnostics, and serialized content. Use after set_cell_contents to verify readback.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"address": {
"description": "Single A1 cell address such as B3.",
"type": "string"
},
"sheetName": {
"description": "Existing sheet name.",
"type": "string"
}
},
"required": [
"sheetName",
"address"
],
"type": "object"
},
"name": "read_cell"
},
{
"description": "Read calculated values plus serialized formulas/inputs for an A1 range. Use for audit readback after edits; use read_cell for one address.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"range": {
"description": "A1 range such as Summary!A1:B5. If omitted from the range, pass sheetName separately.",
"type": "string"
},
"sheetName": {
"description": "Default sheet name when range omits a sheet name, for example Summary.",
"type": "string"
}
},
"required": [
"range"
],
"type": "object"
},
"name": "read_range"
},
{
"description": "Write raw content to one cell and recalculate dependents in memory only. Start with --writable when the edit should persist to JSON.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"address": {
"description": "Single A1 cell address such as B3. Ranges are not accepted.",
"type": "string"
},
"sheetName": {
"description": "Existing sheet name, for example Inputs.",
"type": "string"
},
"value": {
"description": "Raw cell content. Formula strings must start with =; plain strings are stored as literals. Strict MCP hosts such as Semantic Kernel require a single parameter type, so pass evaluated numbers/booleans as formulas such as =0.4 or =TRUE(). The server still accepts JSON number, boolean, or null arguments from clients that support them.",
"type": "string"
}
},
"required": [
"sheetName",
"address",
"value"
],
"type": "object"
},
"name": "set_cell_contents"
},
{
"description": "Write raw content to one cell, recalculate dependents, read a dependent range in the same tool call, and return persistence proof. Use this for stateless MCP clients such as hosted Open WebUI integrations.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"address": {
"description": "Single A1 cell address to edit, such as B3. Ranges are not accepted.",
"type": "string"
},
"readbackRange": {
"description": "Dependent A1 range to read before and after the edit, for example Summary!A1:B5.",
"type": "string"
},
"readbackSheetName": {
"description": "Default sheet name when readbackRange omits a sheet name.",
"type": "string"
},
"sheetName": {
"description": "Existing sheet name for the cell to edit, for example Inputs.",
"type": "string"
},
"value": {
"description": "Raw cell content. Formula strings must start with =; plain strings are stored as literals. Strict MCP hosts require a single parameter type, so pass evaluated numbers/booleans as formulas such as =0.4 or =TRUE(). The server still accepts JSON number, boolean, or null arguments from clients that support them.",
"type": "string"
}
},
"required": [
"sheetName",
"address",
"value",
"readbackRange"
],
"type": "object"
},
"name": "set_cell_contents_and_readback"
},
{
"description": "Validate formula syntax with the WorkPaper parser before writing it to a cell. This checks syntax only; use set_cell_contents plus readback to evaluate.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"formula": {
"description": "Formula string including the leading =, for example =SUM(Inputs!B2:B4).",
"type": "string"
}
},
"required": [
"formula"
],
"type": "object"
},
"name": "validate_formula"
}
]
}What the leaf hashes
{"body":"a18fd7d3229362cd89e4ac22a152731cd74cea8eefd67c125fba87848e1d2ca3","id":275521,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793040644057998,"prev":null,"subject":"1965a3c9-e475-4048-993a-844037428f7b","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0xa21b309f24a5d4c9696afb424d11e0e4f8c1e447e5db286ebbcd27b911311cf5
- 0xed1de41779f1f7e881691a72964d13134d11eda1b182e8fa83d032bf74cd820e
- 0x56141d01fb84d81c64b3decce41523b27fcf4d7f80626989b6a21d74265fc47d
- 0x0255f51f4e6b1cdea853d0f6a76d25820804353121311a94deabd6c461afccb3
- 0xd778039b5d8ee04d3e5a81001069bbadfa668eda3a14ec79dc169d21da6fb6da
- 0xf98677dfba386cea541930208c02d06511aea521656bff42a9e7558de7f88555
- 0x788c57d109431ec1a76a770860e75fad14a40b194b75933df299b2b09a4fc9a1
- 0xb104c63de98cbe0b76cce50eadd477bf25a1ed10e6e37171bcda64d9c1628e4a
- 0xe67eecaf696e494561ce621c14fc42e62336d45f7309ad0195e652382fb489a9
- 0x9f737f37530f83ae6928a14e73e114762b12b3c82ceb7028bdaf78f27b288ea9
- 0x9ca444fcd24e94bee95de2e8d69f385e59ecdaff6c1b017632bff037809c381b
- 0x95576cc3dd18642c859f679cefa1cf80bfc6c690b065916c3585b14e8ef4b1b3
- 0xf8d3e004d9a208d2c5e82ab676956d80f8a3c78387c61dad15a3a8269efee0d8
- 0x6713795704ddd9c528d421fadd9cc96b0200a4ddbba84f88e718d4968dde888b
- 0x62a900133713919f4eed33d8336876b7a6d538233b8a4f3ed03b29aa44f5bad0
- 0x1ac20d30773e1f4f2f811540e9a99b5cca9177c9e2e029acc0d80cf3f1d11f0f
- 0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9
- 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae