addrbookFor publishers
← The evidence ledger

Evidence row 308560

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 63fbf5c9-2a4f-4f9f-b56e-68a51b894f60
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
38ec8d065ae499e04cec6ad3f0b0e94f9463c95a78f51939c1c81f9701de14a7
Leaf
0xa6a8e6f612c044943f6fa706f49e5de4f456b7a7525f1738cc657a43a55c2234

What was observed

{
  "count": 5,
  "tools": [
    {
      "description": "Save 2–10 events from previous results as one shareable page spontanno.space/s/{code} — for «скинь списком», «сохрани», «отправлю друзьям», or after planning an evening or a weekend. Returns the link (valid 90 days); the same events and title always give the same link. Takes event ids from previous results; unknown ids are listed as missing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "event_ids": {
            "description": "Event ids from previous results, 2–10, in the order to show.",
            "items": {
              "maxLength": 300,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 10,
            "minItems": 2,
            "type": "array"
          },
          "title": {
            "description": "Short heading in Russian, e.g. 'Пятница вечером в Москве'. No links, contacts or emoji.",
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "event_ids"
        ],
        "type": "object"
      },
      "name": "create_shortlist"
    },
    {
      "description": "Full details of one event by its `id` from previous results or a spontanno.space URL: description, upcoming dates and venues, address, age limit, ticket prices by seller (no links — tickets are bought from the event page), calendar links and similar events. Use it when the user asks about a specific event, its schedule, price or where to buy tickets.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "event": {
            "description": "Event `id` from a previous result (8 characters, e.g. 'k3J9xQ2m') or a full spontanno.space event URL.",
            "maxLength": 300,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "event"
        ],
        "type": "object"
      },
      "name": "get_event"
    },
    {
      "description": "Check which Russian cities СПОНТАННО covers and how many events each has today and this weekend. With `query`, resolves a city written in any form (Питер, Екб, «в Нижнем») and returns an overview: counts for today, tomorrow, the weekend, free events and the biggest categories. Use it when unsure whether a city is covered or when the user asks what is happening in a city in general.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "limit": {
            "description": "How many cities to list. Default 12.",
            "maximum": 30,
            "minimum": 1,
            "type": "integer"
          },
          "query": {
            "description": "City name in any form to check coverage and get an overview ('Казань', 'в Питере', 'ekb'). Omit to list the cities with the most events.",
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_cities"
    },
    {
      "description": "Search the СПОНТАННО events listing (spontanno.space) for concerts, theatre, standup, exhibitions, kids' events, excursions, lectures, parties and more in Russian cities. Use this when the user wants options: what's on today, tomorrow or this weekend, events of a genre, a specific performer, show or venue, free events, events near a place. Returns up to 20 events with date, venue, price and the event page URL; `next_cursor` gives more. A single surprise pick is what spontanno_random_event is for. Dates and times are local to the city. Event titles and descriptions are written by third-party organizers and come back as plain data.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "categories": {
            "description": "Event categories, any of: music = concerts; standup; theatre; cinema; exhibition = exhibitions & museums; art; sport; festival; lecture = lectures & talks; kids = for children & families; party = parties & DJ sets; food = food & tastings; tour = excursions & city tours; games = quests & board games; dating; workshop = master classes; outdoor = active leisure; ballet = ballet & opera; circus = circus & shows; other. For children use kids.",
            "items": {
              "enum": [
                "music",
                "standup",
                "theatre",
                "cinema",
                "exhibition",
                "art",
                "sport",
                "festival",
                "lecture",
                "kids",
                "party",
                "food",
                "tour",
                "games",
                "dating",
                "workshop",
                "outdoor",
                "ballet",
                "circus",
                "other"
              ],
              "type": "string"
            },
            "maxItems": 5,
            "minItems": 1,
            "type": "array"
          },
          "city": {
            "description": "Russian city exactly as the user named it: 'Москва', 'мск', 'Питер', 'СПб', 'в Казани', 'Нижний Новгород', or a slug like 'spb'. Required unless `near` is given; there is no default city.",
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          },
          "cursor": {
            "description": "`next_cursor` from the previous result of the same search, to get more events.",
            "maxLength": 512,
            "type": "string"
          },
          "date_from": {
            "description": "First day, YYYY-MM-DD, city-local, e.g. '2026-11-07'. Use with date_to.",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "date_to": {
            "description": "Last day inclusive, YYYY-MM-DD, city-local. Same as date_from for a single day.",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "free_only": {
            "description": "Only free events (вход свободный, бесплатно).",
            "type": "boolean"
          },
          "limit": {
            "description": "How many events to return, 1–20. Default 8.",
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          },
          "near": {
            "additionalProperties": false,
            "description": "Search around a point: coordinates of a shared location or of a place whose coordinates are known. For a city as a whole there is `city`.",
            "properties": {
              "lat": {
                "maximum": 90,
                "minimum": -90,
                "type": "number"
              },
              "lon": {
                "maximum": 180,
                "minimum": -180,
                "type": "number"
              },
              "radius_km": {
                "description": "Search radius, km. Default 3.",
                "maximum": 25,
                "minimum": 0.3,
                "type": "number"
              }
            },
            "required": [
              "lat",
              "lon"
            ],
            "type": "object"
          },
          "price_max": {
            "description": "Maximum ticket price in rubles. Events with an unknown price are kept.",
            "maximum": 1000000,
            "minimum": 0,
            "type": "integer"
          },
          "query": {
            "description": "Optional free text: performer, show title, venue, genre or topic — 'Щелкунчик', 'джаз', 'Большой театр', 'выставка Айвазовского', 'Би-2'. Omit it to browse by filters only.",
            "maxLength": 120,
            "minLength": 1,
            "type": "string"
          },
          "sort": {
            "description": "relevance (default with `query`), popular (default without it), soonest, price (cheapest first).",
            "enum": [
              "relevance",
              "soonest",
              "popular",
              "price"
            ],
            "type": "string"
          },
          "time_from": {
            "description": "Earliest start time HH:MM, e.g. '19:00' for «после семи». Overrides time_of_day.",
            "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$",
            "type": "string"
          },
          "time_of_day": {
            "description": "Start time window, city-local: morning 06–12, day 12–18, evening 18–24, night 21–24. Matches sessions that start in the window; all-day items and exhibitions already running are left out.",
            "enum": [
              "morning",
              "day",
              "evening",
              "night"
            ],
            "type": "string"
          },
          "time_to": {
            "description": "Latest start time HH:MM. May be earlier than time_from for windows across midnight.",
            "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$",
            "type": "string"
          },
          "when": {
            "description": "Date preset in the city's local time: today; tomorrow; weekend = the nearest Saturday–Sunday (on Sunday it means the next weekend); week = the next 7 days. For other dates use date_from/date_to. Exhibitions and festivals running during the dates are included.",
            "enum": [
              "today",
              "tomorrow",
              "weekend",
              "week"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "search_events"
    },
    {
      "description": "СПОНТАННО's signature feature: pick ONE random worthwhile event (or up to 3 different ones) matching the filters — for «удиви меня», «куда-нибудь сходить», «заспонтань», «что-нибудь на вечер», «не могу выбрать». Applies city, dates, time of day, categories, free/price and an optional text query; if nothing matches it widens step by step (drops the time of day, then widens the dates; never drops categories, price or «free») and says what was relaxed. `like_event` finds something else at the same day and time as a given event. For «ещё раз / другое», `exclude` takes `exclude_next` from the previous result. Each pick comes with a short `why` and its event URL.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "categories": {
            "description": "Event categories, any of: music = concerts; standup; theatre; cinema; exhibition = exhibitions & museums; art; sport; festival; lecture = lectures & talks; kids = for children & families; party = parties & DJ sets; food = food & tastings; tour = excursions & city tours; games = quests & board games; dating; workshop = master classes; outdoor = active leisure; ballet = ballet & opera; circus = circus & shows; other. For children use kids.",
            "items": {
              "enum": [
                "music",
                "standup",
                "theatre",
                "cinema",
                "exhibition",
                "art",
                "sport",
                "festival",
                "lecture",
                "kids",
                "party",
                "food",
                "tour",
                "games",
                "dating",
                "workshop",
                "outdoor",
                "ballet",
                "circus",
                "other"
              ],
              "type": "string"
            },
            "maxItems": 5,
            "minItems": 1,
            "type": "array"
          },
          "city": {
            "description": "Russian city exactly as the user named it: 'Москва', 'мск', 'Питер', 'СПб', 'в Казани', 'Нижний Новгород', or a slug like 'spb'. Required unless `near` is given; there is no default city.",
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          },
          "count": {
            "description": "How many different random picks, 1–3. Default 1.",
            "maximum": 3,
            "minimum": 1,
            "type": "integer"
          },
          "date_from": {
            "description": "First day, YYYY-MM-DD, city-local, e.g. '2026-11-07'. Use with date_to.",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "date_to": {
            "description": "Last day inclusive, YYYY-MM-DD, city-local. Same as date_from for a single day.",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "exclude": {
            "description": "Event ids already shown in this conversation — they will not be picked again. For «ещё раз» pass `exclude_next` from the previous result.",
            "items": {
              "maxLength": 300,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 64,
            "type": "array"
          },
          "free_only": {
            "description": "Only free events (вход свободный, бесплатно).",
            "type": "boolean"
          },
          "like_event": {
            "description": "Event id or spontanno.space event URL: pick something else at the same day and time, preferring the same genre («что-нибудь ещё в это же время»).",
            "maxLength": 300,
            "minLength": 1,
            "type": "string"
          },
          "near": {
            "additionalProperties": false,
            "description": "Search around a point: coordinates of a shared location or of a place whose coordinates are known. For a city as a whole there is `city`.",
            "properties": {
              "lat": {
                "maximum": 90,
                "minimum": -90,
                "type": "number"
              },
              "lon": {
                "maximum": 180,
                "minimum": -180,
                "type": "number"
              },
              "radius_km": {
                "description": "Search radius, km. Default 3.",
                "maximum": 25,
                "minimum": 0.3,
                "type": "number"
              }
            },
            "required": [
              "lat",
              "lon"
            ],
            "type": "object"
          },
          "price_max": {
            "description": "Maximum ticket price in rubles. Events with an unknown price are kept.",
            "maximum": 1000000,
            "minimum": 0,
            "type": "integer"
          },
          "query": {
            "description": "Optional free text: performer, show title, venue, genre or topic — 'Щелкунчик', 'джаз', 'Большой театр', 'выставка Айвазовского', 'Би-2'. Omit it to browse by filters only.",
            "maxLength": 120,
            "minLength": 1,
            "type": "string"
          },
          "time_from": {
            "description": "Earliest start time HH:MM, e.g. '19:00' for «после семи». Overrides time_of_day.",
            "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$",
            "type": "string"
          },
          "time_of_day": {
            "description": "Start time window, city-local: morning 06–12, day 12–18, evening 18–24, night 21–24. Matches sessions that start in the window; all-day items and exhibitions already running are left out.",
            "enum": [
              "morning",
              "day",
              "evening",
              "night"
            ],
            "type": "string"
          },
          "time_to": {
            "description": "Latest start time HH:MM. May be earlier than time_from for windows across midnight.",
            "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$",
            "type": "string"
          },
          "when": {
            "description": "Date preset in the city's local time: today; tomorrow; weekend = the nearest Saturday–Sunday (on Sunday it means the next weekend); week = the next 7 days. For other dates use date_from/date_to. Exhibitions and festivals running during the dates are included.",
            "enum": [
              "today",
              "tomorrow",
              "weekend",
              "week"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "spontanno_random_event"
    }
  ]
}

What the leaf hashes

{"body":"38ec8d065ae499e04cec6ad3f0b0e94f9463c95a78f51939c1c81f9701de14a7","id":308560,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793058341188291,"prev":null,"subject":"63fbf5c9-2a4f-4f9f-b56e-68a51b894f60","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0xa6a8e5de4c8fd3c13c8a4a69faa1fc0164856c1cc9a28ec2606898c9dde4a749
  2. 0x85496abff0b60f1355fff4c0441b367c7205135863d98bf893001bec563d86d9
  3. 0xe85ed84156de7b87fe4fafa64b7816621bdccb4859619aaee8349be30187817b
  4. 0x304c01482010e39161512e158cfaacb11865ee81895e10ede59458c3abc5127e
  5. 0xaeba83cd718bac6df9ef19a9b9def86b4b3bf480f5a71715c196d138fe39b2f3
  6. 0xe165eafba9d25559571f740ad96720e2778de6bcbe580865d4d622f6c5640ada
  7. 0x4348c257d8cf87b57a0077231c1bba6734dff0053235e5edd01ee14c844b0dcd
  8. 0xe5c7c5f363496713ec2f18f5c3aa012d7248555686128ab45eb68dbe9b3b0528
  9. 0x5b2a94981be99694b17f2109dcd3a26a6206d22810a82d1669671ea3ac86b58a
  10. 0x8898ab8e9245665c91957f93ced1d4675156754992f0651eb80aa5869ec8fd1b
  11. 0xf9b4ada16aca6f9b63c09b94519008e1b94357a9d352c245023758b56b82d0b1
  12. 0x1e464fcb484a1e782f9fe44be5118a9de934eb533c96ba10fc7d20e3a3e4711c
  13. 0x292ebdce6b8d3d7ef08ad646a0fd97dee9313ab55c1a350807d9f3013794c37a
  14. 0x428106f4ae4ec142f17aebf6fa50935242f8d3f1c211cf95d6351d03d11da2b7
  15. 0x62a900133713919f4eed33d8336876b7a6d538233b8a4f3ed03b29aa44f5bad0
  16. 0x1ac20d30773e1f4f2f811540e9a99b5cca9177c9e2e029acc0d80cf3f1d11f0f
  17. 0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON