← The evidence ledger
Evidence row 220953
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint e24ab262-4cb0-41bb-91e2-3aa37b324167
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- a36e600d54b36b60597763851259e6f3c604d9f0caf3a96ac778e316429766e9
- Leaf
- 0xed1c5c89bb9c6364762ed8e1b40a3c542d0ec1e1aef559f7bed161f25a417f2d
What was observed
{
"count": 5,
"tools": [
{
"description": "List the public channels on this server with member counts and topics. Start here when you do not know a channel's exact name. Invite-only, key-protected and encrypted-only channels are never listed. No authentication required.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"type": "object"
},
"name": "freeq_channels"
},
{
"description": "Read recent messages from a channel, newest first. Page backwards by passing the oldest msgid you have seen as `before`. Public channels need no authentication; restricted ones need a bearer from a member.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"before": {
"description": "Unix-seconds timestamp of the oldest message you already have; omit for the newest page. This is the `timestamp` field, not the msgid.",
"type": "integer"
},
"channel": {
"description": "Channel name, with or without the leading #.",
"type": "string"
},
"limit": {
"default": 50,
"description": "How many messages to return.",
"maximum": 200,
"minimum": 1,
"type": "integer"
}
},
"required": [
"channel"
],
"type": "object"
},
"name": "freeq_history"
},
{
"description": "The messages a channel's operators pinned — usually its rules, links and standing context. Cheaper than reading history when you want to know what a channel is for.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"channel": {
"description": "Channel whose pins to read, with or without the leading #.",
"type": "string"
}
},
"required": [
"channel"
],
"type": "object"
},
"name": "freeq_pins"
},
{
"description": "Full-text search within one channel. Use this instead of paging history when you know roughly what was said. Same access rules as freeq_history.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"channel": {
"description": "Channel to search.",
"type": "string"
},
"limit": {
"default": 50,
"description": "How many matches to return.",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"q": {
"description": "Search terms.",
"type": "string"
}
},
"required": [
"channel",
"q"
],
"type": "object"
},
"name": "freeq_search"
},
{
"description": "Check who signed a message. `signed_by: \"author\"` is non-repudiable — the author's own key signed those bytes. `signed_by: \"server\"` proves relay only, NOT authorship. Call this before quoting anyone as having said something; do not present a server-relayed message as author-signed.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"msgid": {
"description": "ULID message id.",
"type": "string"
}
},
"required": [
"msgid"
],
"type": "object"
},
"name": "freeq_verify"
}
]
}What the leaf hashes
{"body":"a36e600d54b36b60597763851259e6f3c604d9f0caf3a96ac778e316429766e9","id":220953,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793027016844299,"prev":null,"subject":"e24ab262-4cb0-41bb-91e2-3aa37b324167","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0xed1c49d193e42d1b232e33240e58ea4f2935192981d505deeb2ea3c59c0a8b47
- 0x35fb1ca119c802e005edd5b8b049ec44ec090ae7fce27ed76ff2841a5cef20b3
- 0xdea1197d6c962ff55f385f0b2735ab1248442e62e59b4b60035ffc95781bf0ed
- 0x740673e8ed0135ee17fe2172ba7cdadbff06073742e1738a52f22d5e46887901
- 0x877c0e772ecd1041c69bc2da359e31b17fbb6213f161d37fb12786c6feaff3f4
- 0x98810075908079a96a8c399a91dbc7083fb7351a168dd324262c8888a32cc526
- 0x5441b5304ef9edd5dc365922b32610182e5b21d2574f6158353337fce41637e8
- 0x2f5de66e74056d0ad2022f96067ceb6748ac833016c353b314f7d9f3a41d3855
- 0x3e7454bbcb68b3bb36b1b68423bfef297cf86ab769286341444c6f2ea3d72f4e
- 0xf333b1fb4291fc66aba3c2430863d37b43610cc7bcfcad50c56770f5a796facc
- 0x3f07a2115848067024e2992cb2c05a86eb8d02df5abfcead8bc47854e501603e
- 0xe158f09cdbfb4f7be1bfd45fce3afcad32c2b3bb2fc2e181dadc193bbf194bfc
- 0x746e9e5b6765727b6b96f41204cc115b0302259f6c67be0cf0efbf245601d500
- 0x614d844c9e0509d9f9e63697aa2935555bce5f13695a8dc0047aa9e9898d70b3
- 0x95657a7d540ed6cac0bde9995782333b2562a9a6641853269ac95148827410f0
- 0x5fb5dda563336cd1bc1b9f44c52b76237ae72ed2145cb9290f39f304ca7dd678
- 0x74a0a08e4e7ab9aa5bfbead33dec7e1c7e8e364cff69a63720d764bbe987aadc
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae