← The evidence ledger
Evidence row 1225152
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint d5de8566-0272-4c40-a1ed-5689e0f5c37c
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 6b42f66d5dac8474bbc5e4ce452ef9ac4198345a6072f1faa28a0a6db49ef2dd
- Leaf
- 0xe89fd50d11c8567220213b17e9079eb66c62fc9fe9c55231bc08f86b2528dfe4
What was observed
{
"count": 1,
"tools": [
{
"description": "Exact layout of a through dovetail joint, for hand-cut joints and router templates. Hand mode: give the board width, the thicknesses of both boards, the number of tails, the pin width at its narrow end and the angle (degrees per side, 1:N slope ratio, included angle or degrees from horizontal), in mm or inches; the tail width is computed. Router mode: give the tail width instead; the pins are spaced evenly and the router template is sized. Returns every tail and pin position and width on both faces (they sum exactly to the board width), tail and pin lengths, the angle in all four conventions, and warnings. Given measured socket dimensions, also recommends tail widths that fit them. Deterministic: use this instead of computing dovetail geometry yourself.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"angle": {
"description": "Dovetail angle, read according to angleFormat. It must give a per-side angle from 1° to under 45°.",
"exclusiveMinimum": 0,
"type": "number"
},
"angleFormat": {
"default": "per_side_from_vertical",
"description": "How to read angle: degrees per side from vertical (router bits: 7, 8, 14), slope ratio N for 1:N (6 for 1:6), included angle in degrees, or degrees from horizontal.",
"enum": [
"per_side_from_vertical",
"slope_ratio",
"included_angle",
"from_horizontal"
],
"type": "string"
},
"boardWidth": {
"description": "Width of both boards across the joint. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"guideBushingDiameter": {
"description": "Router mode: guide bushing diameter, larger than the bit. Default: the bit diameter plus 7 mm. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"measuredSockets": {
"description": "Socket dimensions as actually cut, measured on both sides. When given, the response recommends tail widths that fit them.",
"properties": {
"left": {
"properties": {
"baseWidth": {
"description": "Socket width on the outside face of the pin board: the wide side. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"depth": {
"description": "Socket depth: for through dovetails, the pin board thickness. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"tipWidth": {
"description": "Socket width on the inside face of the pin board, where the tail enters: the narrow side. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"tipWidth",
"baseWidth",
"depth"
],
"type": "object"
},
"right": {
"properties": {
"baseWidth": {
"description": "Socket width on the outside face of the pin board: the wide side. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"depth": {
"description": "Socket depth: for through dovetails, the pin board thickness. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"tipWidth": {
"description": "Socket width on the inside face of the pin board, where the tail enters: the narrow side. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"tipWidth",
"baseWidth",
"depth"
],
"type": "object"
}
},
"required": [
"left",
"right"
],
"type": "object"
},
"mode": {
"default": "hand",
"description": "hand: give pinWidth, the tail width is computed. router: give tailWidth, the pins are spaced evenly.",
"enum": [
"hand",
"router"
],
"type": "string"
},
"numberOfTails": {
"description": "Number of tails.",
"maximum": 30,
"minimum": 1,
"type": "integer"
},
"pinBoardThickness": {
"description": "Thickness of the board the pins are cut on. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"pinWidth": {
"description": "Required in hand mode: pin width at its narrow end (the outside face of the pin board). Edge pins get the same narrow width. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"routerBitDiameter": {
"description": "Router mode: dovetail bit diameter, at most the tail width. Default: 8 mm, or the smallest bit that cuts the depth of the tails if larger. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"tailBoardThickness": {
"description": "Thickness of the board the tails are cut on. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"tailWidth": {
"description": "Required in router mode: tail width at its wide end. Between 0.5 and 5000 mm (0.02 to 196.85 in).",
"exclusiveMinimum": 0,
"type": "number"
},
"unit": {
"default": "mm",
"description": "Unit of every length in the request and in the response.",
"enum": [
"mm",
"inch"
],
"type": "string"
}
},
"required": [
"boardWidth",
"tailBoardThickness",
"pinBoardThickness",
"numberOfTails",
"angle"
],
"type": "object"
},
"name": "dovetail_layout"
}
]
}What the leaf hashes
{"body":"6b42f66d5dac8474bbc5e4ce452ef9ac4198345a6072f1faa28a0a6db49ef2dd","id":1225152,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793325969655231,"prev":null,"subject":"d5de8566-0272-4c40-a1ed-5689e0f5c37c","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (243099 rows).
- 0xe89fd695559fc0306c92967b5f5cf3fe3ff4c7e36d5a521edaa71a946781bee0
- 0x94d6607a3b240692962eb442e6c48aeeabe783a67f35f585f044dc5cdff95500
- 0x576a5566cd90b2cac1b7283fa5c7fbaa5d5184efba1ce8ab7bfe47843322e0b9
- 0xfcd57b07961228e1a2ae0abde2eed067c29c6f53e44d742b8eaee0c9768610f8
- 0x0da40c6594e4fef9cc1c43439eabd34caedc097f10fcd70838787e2f06caeb5e
- 0x9dcc0f672210627c9963c03b5b579a50c4c4c2ecdc86c484d7c207fa14327ff0
- 0x918e56b812e2af8fdb1cda8e22d7af5d13aca3bcc7679a2aca76eb961173ab30
- 0x965b294dc0c85dee5f6165536ae7a317316e81b9a5ab522bdb244a0d141cb399
- 0xe28b835ffac2cad72e73f67bc965a9814e75dc30d63c4df9c1c3e68fe30998f0
- 0xa23c1d2607c97c03791af0998482afb596843cc7194a618a82f970d816e3e2f6
- 0xfb38e63e65319af67a9057fd471b981b0af0222ac44244108295652819e5665a
- 0xb92e78d48115ea6720d21699267631e6ac248ee86443090698cff054196176c5
- 0xfbc54bb68398dda4b439809764b90c546b18332d8f5c47b62a26f520efc65735
- 0x3a7a0fa82cbf8d3f1546fc6f89c9a5f35e025db7170b70e3f2dcd72b4ebb0f8e
- 0xea7df1002501052c124b5aed2b1a5df3d59be54394c6a8539c86fad1df339a9e
- 0xfbe61dc2d59668ac573e5eab865747e21d38bf2fe4c64762beef01f1018a4dea
- 0x71e74c274b23c9047354edb6dcd2c654415e3986b8bd875dae992996ea12e22b
- 0x0c43c73b62a5d49ee1444b5dc4195fc5b16b141d3f4458e2e9fbd5fd6ecb367d
- Day root
- 0x0826c7ad6039e06a2360ca0a4a3a4fe7f2626c6dc19f71a37599386f78b39875
- Chained
- 0x36b4c8a1063758f0b8765fa1bdf75fa92fb543cc183add3e261880ee2bd1f822
- Published
- On Arc Testnet, block 69923247: 0x8704744146c6967c8abc9e9a99de4db7283b29e840922ea83a69b6fe776e6861