addrbookFor publishers
← The evidence ledger

Evidence row 309917

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 992787dd-119b-479c-992a-ab23b5dc7d70
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
44c32f3dd9efffee9774f1c0a8683e1826556e0ee0adfcff13c73168c5770cdb
Leaf
0x9fb34df554869b6192eaf125369967362c21f4bc31c191520dca5216ad4472e7

What was observed

{
  "count": 5,
  "tools": [
    {
      "description": "One cruise in full: the day-by-day itinerary, every future sailing with its price (or why there isn't one) and a booking link, and its Cruisify page. Give the url of a Cruisify cruise page, as search_cruises returns it, or the cruise's slug.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "slug": {
            "description": "A cruise's slug: the last part of its URL",
            "maxLength": 200,
            "type": "string"
          },
          "url": {
            "description": "A Cruisify cruise page URL, as search_cruises returns it",
            "maxLength": 500,
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_cruise"
    },
    {
      "description": "The cruise lines we cover and their ships, with how many upcoming cruises we hold for each and their Cruisify pages where there are some.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "list_cruise_lines"
    },
    {
      "description": "The ports the cruises we hold leave from, with UK ports marked, how many upcoming cruises leave from each and its Cruisify page where there is one. Set uk_only for UK ports only (no-fly cruises).",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "uk_only": {
            "description": "true: UK ports only, the departures for no-fly cruises",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "name": "list_departure_ports"
    },
    {
      "description": "Every destination we know, ocean or river, with how many upcoming cruises we hold for each and its Cruisify page where there is one.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "list_destinations"
    },
    {
      "description": "Search cruises sold to the UK market by destination, departure port, cruise line, ship, months or dates, length, budget, no-fly (UK departures) and ocean or river. Names or slugs both work, and anything we can't match comes back in not_understood. query takes free text (\"a week in the fjords from Southampton next June\"); structured fields win where both are given. Returns up to 20 cruises a page, with prices in pounds (each with its basis and the date it was checked), month counts and Cruisify links. The cursor holds only the page number, so for the next page call again with the same fields (applied_filters, without query) and next_cursor as cursor, up to 10 pages.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "cruise_lines": {
            "description": "Cruise line names, slugs or short names: \"P&O\", \"fred-olsen\"",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "cursor": {
            "description": "next_cursor from the previous page. It holds only the page number, so send it with that page's applied_filters",
            "maxLength": 64,
            "type": "string"
          },
          "date_from": {
            "description": "Earliest departure date, YYYY-MM-DD",
            "format": "date",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
            "type": "string"
          },
          "date_to": {
            "description": "Latest departure date, YYYY-MM-DD",
            "format": "date",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
            "type": "string"
          },
          "departure_ports": {
            "description": "Departure port names or slugs: \"Southampton\" (list_departure_ports has them all)",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "destinations": {
            "description": "Destination names or slugs: \"Caribbean\", \"norwegian-fjords\" (list_destinations has them all)",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "kind": {
            "description": "ocean or river cruises only",
            "enum": [
              "ocean",
              "river"
            ],
            "type": "string"
          },
          "max_price_gbp": {
            "description": "Highest price per person, in pounds",
            "maximum": 1000000,
            "minimum": 1,
            "type": "integer"
          },
          "months": {
            "description": "Departure months, YYYY-MM",
            "items": {
              "pattern": "^\\d{4}-(?:0[1-9]|1[0-2])$",
              "type": "string"
            },
            "maxItems": 24,
            "type": "array"
          },
          "nights_max": {
            "description": "Longest length, in nights",
            "maximum": 365,
            "minimum": 1,
            "type": "integer"
          },
          "nights_min": {
            "description": "Shortest length, in nights",
            "maximum": 365,
            "minimum": 1,
            "type": "integer"
          },
          "no_fly": {
            "description": "true: only cruises leaving from a UK port",
            "type": "boolean"
          },
          "query": {
            "description": "Free text, read into the fields above: \"a week in the fjords from Southampton next June\". Structured fields win where both are given. Leave it out when paging.",
            "maxLength": 200,
            "type": "string"
          },
          "round_trip": {
            "description": "true: round trips only; false: one-way only",
            "type": "boolean"
          },
          "ships": {
            "description": "Ship names or slugs",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "sort": {
            "description": "departure (default), price, price_per_night, nights (shortest first) or newest",
            "enum": [
              "departure",
              "price",
              "price_per_night",
              "nights",
              "newest"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "search_cruises"
    }
  ]
}

What the leaf hashes

{"body":"44c32f3dd9efffee9774f1c0a8683e1826556e0ee0adfcff13c73168c5770cdb","id":309917,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793059184147226,"prev":null,"subject":"992787dd-119b-479c-992a-ab23b5dc7d70","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. 0x9fb3aa366a06780bee48acdb1b9cdcf0d53689dadcceff57170c88fdccbfa16d
  2. 0x3c9f8d1ef5c12e1f12d0dedae4094ba2a417d4edb739002f127d93c0df90b2f9
  3. 0x921f20ed5d3759bd04451aa9a5e32fcc862efde93b99854bc831424cfff430dd
  4. 0xc452deac6701b50c757f9d7e416eade6054a63ed1a81ed929d13758436d1b80f
  5. 0x2c41f6b0f95b6f402e88f8de7abb2269f9286e16bd0241fcb7ab7ecc5eb6f614
  6. 0x1381783ec96030cf6a58a72d0144f822ed8223f56f44793aef2486c8f640ea86
  7. 0x5ec0649643b6c3d80966af8142f30a6c72979ee34bb02044a067abb0d7e2638b
  8. 0x5e35d566c5066126ab1c15b080c9e26ac97418ce6e4ffb33ff2f0e9f21730f1d
  9. 0x746f0a3be72549514ae83b6e8b25f02867f85ef0b5dc76ab3c072aeb5394c301
  10. 0xad33b6ed23e6b6f31de87919e88c08498b71327e286bf36d5ea11b6c48a97eee
  11. 0xb5a5da1d8cc5364d4e1e81f176a4bcbca86e02bf02b30e06db118bb7f2c487a8
  12. 0x6367dad81ab5c2e6f424ad3e06310c9b75079293d62a08dfbde98ef993c35229
  13. 0xf8d3e004d9a208d2c5e82ab676956d80f8a3c78387c61dad15a3a8269efee0d8
  14. 0x6713795704ddd9c528d421fadd9cc96b0200a4ddbba84f88e718d4968dde888b
  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