← The evidence ledger
Evidence row 574754
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint eb26b735-5128-4cf7-9ad0-e4bf43201193
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- d6bac3fa494d13f23713ffb040d27eb1ab2fda259ccb9c2688480df15640923a
- Leaf
- 0xf1cfa05d35fc41611c9087e289bb75157cf5a6c4b78042c3353945b16a06c3c0
What was observed
{
"count": 5,
"tools": [
{
"description": "List the Swiss cantons supported by Joomil's `canton` filter. Returns the exact `name` value to pass to search_classifieds, plus a readable French label. Call this before filtering by canton — the API values are non-obvious (e.g. 'Bern' not 'Berne', 'Geneve' not 'Genève' or 'Geneva').",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "get_cantons"
},
{
"description": "List active categories of the Joomil.ch marketplace. Returns a flat list with parent_id for hierarchy reconstruction. Omit parent_id for all categories, use parent_id=0 for root categories only, or pass a specific ID to get direct children of that category.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"parent_id": {
"description": "Filter to direct children of this category ID. Omit for all categories. Use 0 for root categories only.",
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"name": "get_categories"
},
{
"description": "Get full details of a single classified ad on Joomil.ch by its numeric ID. Returns complete description, all images URLs, category breadcrumb (full_path), vendor info (name, certified status, pro company), expiry date and boost level. Use search_classifieds first to find relevant listing IDs.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Numeric listing ID — visible in the URL and in search_classifieds results",
"exclusiveMinimum": 0,
"type": "integer"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_classified"
},
{
"description": "Search classified ads on Joomil.ch — Switzerland's leading French-speaking classifieds marketplace (since 2007). Returns a paginated list of public listings with title, description (truncated to 300 chars), price, location, category and vendor info. All parameters are optional — call with no arguments to browse the latest listings. Use get_classified to fetch full details of a specific listing.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"canton": {
"description": "Swiss canton filter — strict enum. Use get_cantons for the official list. WARNING: values are API-specific (e.g. 'Bern' not 'Berne', 'Geneve' not 'Genève'/'Geneva'). Supported: Geneve, Vaud, Valais, Fribourg, Neuchatel, Jura, Bern, Argovie, Zurich, Lucerne, Bale-Ville, Etranger.",
"enum": [
"Geneve",
"Vaud",
"Valais",
"Fribourg",
"Neuchatel",
"Jura",
"Bern",
"Argovie",
"Zurich",
"Lucerne",
"Bale-Ville",
"Etranger"
],
"type": "string"
},
"cat_id": {
"description": "Category ID filter — includes subcategories automatically. Use get_categories to browse available categories.",
"exclusiveMinimum": 0,
"type": "integer"
},
"limit": {
"description": "Results per page (1–50, default 20)",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"location": {
"description": "City name or postal code (NPA) — partial match",
"type": "string"
},
"offset": {
"description": "Pagination offset. Use next_offset from previous response to get next page.",
"minimum": 0,
"type": "integer"
},
"price_max": {
"description": "Maximum price in CHF (inclusive)",
"minimum": 0,
"type": "number"
},
"price_min": {
"description": "Minimum price in CHF (inclusive)",
"minimum": 0,
"type": "number"
},
"q": {
"description": "Full-text search query (searches title and description)",
"type": "string"
},
"sort": {
"description": "Sort order: recent (newest first, default), price_asc, price_desc, views",
"enum": [
"recent",
"price_asc",
"price_desc",
"views"
],
"type": "string"
}
},
"type": "object"
},
"name": "search_classifieds"
},
{
"description": "Infer search_classifieds filters from a natural-language query. Use this before search_classifieds when the user mentions a category, location, canton or price in free text. Returns a ready-to-use filters object, a category confidence score and warnings for uncertain matches.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"query": {
"description": "Natural-language search request, e.g. 'appartement 3 pièces à Sion' or 'Tesla Model 3 moins de 25000 CHF'.",
"minLength": 1,
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "suggest_filters"
}
]
}What the leaf hashes
{"body":"d6bac3fa494d13f23713ffb040d27eb1ab2fda259ccb9c2688480df15640923a","id":574754,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793141772966715,"prev":null,"subject":"eb26b735-5128-4cf7-9ad0-e4bf43201193","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).
- 0xf1cf8b7e3a2a26fc7cdb27c0634f6b423df2ffae06e39e58322a63f559bbde79
- 0x26601a787511fb680dcc7a93c4b9f7411d20c5fe2da682e2fa28498c9f610798
- 0x0c9d8a18fddd374791b0779897a5310460c2088db25a2e9d69c0a7b42a04a2a2
- 0x154c3e9c1756dc1a953e490b22a499d13763624ce92caadf90c6708f6e8d3267
- 0x1c1abeb68a1a7a037584122be1f8e2b0b3a860aeda010edd863356c2b5c73989
- 0xca879b76daf21273332c4a399f1063adeb8d26291d0a87ccefdeb8742db64cc3
- 0x9ceb6bd1f710ed4f928e41d9599308bcdbbb962502f3ec756b44725747d6d6a2
- 0x9cdcfa95e6e56a7ac80cced4e7d19e486574d73e484e6edaa0b1f2b3d99b9e60
- 0x51ef2597384a6934f8b25f160171672fb04d4b2993539956ca83112ff8275a14
- 0x885dedb11c9f215b861626770d162230c3d583157caa062b453cc22d1d3d2674
- 0x2ea101b6388c288056f45a9fd999778249a27a3187a1c19c21450a69a4412959
- 0xc76e7a2a7d72384a3306a63b271737f83983bf378cba5d40efe61cfc57eb7d40
- 0x47993ad5e402c748d96928c5127292d12f5f590d15cf544698f6bb348ad7dc9b
- 0xce1471491ffb52101d7cd9884cca0fb37a9496f6e8250375054907d24a35d04f
- 0x56f7109d4cde42492651beb1237c13cdcbf95e6fee2b2482391a2388e04c4629
- 0x8745bd887f5ce9f7a49558fd2b04cdcd97a05ea9f8a23f62d0e80cb13d328b0f
- 0xdf1105afdc109de3c09a98fc8a3864159ad964e6f49b635c105a27a1e1f14310
- 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
- 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
- Day root
- 0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
- Chained
- 0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
- Published
- On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4