← The evidence ledger
Evidence row 258138
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 4f651fa8-6fd7-4443-a00a-5d35e6599fe6
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- e30f4c46cb45f79c751be4cf1135fc1d8fca9faec13fc71de0e38138401a9b07
- Leaf
- 0xfc73a8addfd0b5e5a7dda33ba18fc6f6b0bd2aca60ae5702dc11ec498d73ee8b
What was observed
{
"count": 5,
"tools": [
{
"description": "Compare two OpenAPI spec versions to detect breaking changes: removed paths/operations, new required parameters, removed response codes, operationId renames.",
"inputSchema": {
"properties": {
"spec_new": {
"description": "New spec version",
"type": "object"
},
"spec_old": {
"description": "Previous spec version",
"type": "object"
}
},
"required": [
"spec_old",
"spec_new"
],
"type": "object"
},
"name": "check_breaking_changes"
},
{
"description": "Compare a real HTTP request/response against an OpenAPI spec contract. Returns per-field violations.",
"inputSchema": {
"properties": {
"request": {
"description": "HTTP request to validate",
"properties": {
"body": {
"description": "Request body",
"type": "object"
},
"contentType": {
"description": "Content-Type (default: application/json)",
"type": "string"
},
"method": {
"description": "HTTP method",
"type": "string"
},
"params": {
"properties": {
"path": {
"type": "object"
},
"query": {
"type": "object"
}
},
"type": "object"
},
"path": {
"description": "Request path (e.g. /users/123)",
"type": "string"
}
},
"required": [
"method",
"path"
],
"type": "object"
},
"response": {
"description": "HTTP response to validate (optional)",
"properties": {
"body": {
"type": "object"
},
"contentType": {
"type": "string"
},
"statusCode": {
"type": "integer"
}
},
"type": "object"
},
"spec": {
"description": "OpenAPI spec JSON object",
"type": "object"
}
},
"required": [
"spec",
"request"
],
"type": "object"
},
"name": "diff_request_response"
},
{
"description": "Generate mock response data from an OpenAPI spec. Uses examples, defaults, formats, and type heuristics.",
"inputSchema": {
"properties": {
"method": {
"description": "HTTP method (used with path)",
"type": "string"
},
"path": {
"description": "Target path (optional; generates all if omitted)",
"type": "string"
},
"spec": {
"description": "OpenAPI spec JSON object",
"type": "object"
},
"statusCode": {
"default": "200",
"description": "Response status code (default: 200)",
"type": "string"
}
},
"required": [
"spec"
],
"type": "object"
},
"name": "generate_mock_from_spec"
},
{
"description": "Lint an API spec for quality and best practice compliance. Rules: operation-id-kebab-case, response-success-required, tags-defined, no-empty-description, security-defined.",
"inputSchema": {
"properties": {
"rules": {
"description": "Rules to apply (defaults to all)",
"items": {
"type": "string"
},
"type": "array"
},
"spec": {
"description": "OpenAPI spec JSON object",
"type": "object"
}
},
"required": [
"spec"
],
"type": "object"
},
"name": "lint_api_schema"
},
{
"description": "Validate an OpenAPI 3.x or AsyncAPI spec JSON. Returns structural errors, missing required fields, and warnings.",
"inputSchema": {
"properties": {
"spec": {
"description": "OpenAPI or AsyncAPI spec as a JSON object",
"type": "object"
},
"strict": {
"default": false,
"description": "Treat warnings as errors (default: false)",
"type": "boolean"
}
},
"required": [
"spec"
],
"type": "object"
},
"name": "validate_openapi_spec"
}
]
}What the leaf hashes
{"body":"e30f4c46cb45f79c751be4cf1135fc1d8fca9faec13fc71de0e38138401a9b07","id":258138,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793029950095753,"prev":null,"subject":"4f651fa8-6fd7-4443-a00a-5d35e6599fe6","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0xfc73a2648260a9a33fd550279caf78c050b63dd85ad45025f67f265ddd616cee
- 0x0eb6b2f7113ac6856d670d64150f227480fc00d96724af59492f8af180bf17cd
- 0x67461f08419f7530191ed9d0a9b741a9bd64b962ea194b3f9f1757b9d82faa90
- 0x7ef2cb34e463ecd27d5a4f472722877be0686cc34c14a9289982383052e405b9
- 0xba769b0ff1e9d8769c67191623809081625324b62a7e6bce7e2c5955cfea65ab
- 0x70378ea586ecb48ede58ce330cbae74ab341755499de3219b45ce05a5ff59aaf
- 0xf85d246b45d880e41b5c02aa2abab2ee364be0491b7132fda197fb4a16d4c60f
- 0x8db6b774b2dfc8c1179ffa99ffbed3aa8c9d3a16517531c3539e3c34842666ce
- 0x136ba120fe1689e63adfe97318f101db112c5f8bc417737f0dd8694087327526
- 0x3a8d3d4169cff276684d88a4f127811b670ead57557bd0903bd3af277772b2c1
- 0x51bc8fcd224b36d2c60fa49f46f383ee8328191b9e73209ce8018f2612c3d42f
- 0xf8173f36b7a27e1bb0f6961a49501bba1d99349c5e11449d0d557fbaa910be0a
- 0xbee644d57738676bfb20eb90d6021f364bf883a8d54f8d17e9dc4749b4074c3d
- 0x44945ea9ad8b24e723ad5a8fd6d014024a49531783f74ff9229c2ab6930e84c8
- 0x68d296b1e00b4899fb83c3fba36fffaefa311eac2903067dbebfe776a12b4a9a
- 0x5fb5dda563336cd1bc1b9f44c52b76237ae72ed2145cb9290f39f304ca7dd678
- 0x74a0a08e4e7ab9aa5bfbead33dec7e1c7e8e364cff69a63720d764bbe987aadc
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae