addrbookFor publishers
← The evidence ledger

Evidence row 304855

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 651c6ad6-cbdb-476b-8c42-11e9b1511dd7
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
1e3eb04ad9fa656127e4f3a2d466ab5981320baa666ed0761376474b0b6af0d8
Leaf
0xc48099fb4b8ce4b6f8dda0f54f0ca859748910a1f7ea6f439d5f1efdf6606352

What was observed

{
  "count": 4,
  "tools": [
    {
      "description": "Get one news event in detail. A cluster is a single real-world event assembled from many outlets covering the same happening and deduplicated into one item, so you get one event rather than 20 near-duplicate headlines. Returns its summary, a significance score (1 to 10, where 8 and above is exceptional), a source count, the situation it belongs to if any, and its underlying source articles with links. It returns up to 100 representative articles, one per source; `sources` and `articles_total` are the full count, and `articles_truncated` says whether the list was cut. Use this when the user wants the specifics of one event. Get a cluster id from search_situations, get_situation_timeline, or a clstr.news URL. Cite the returned URLs. (Requires sign-in, or a free API key: https://clstr.news/developers)",
      "inputSchema": {
        "properties": {
          "articles": {
            "description": "How many source articles to return, 1 to 100. Default 100. Lower it when you only need a few citations; the source count is reported separately and is unaffected.",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "cluster_id": {
            "description": "Cluster id or slug (from timelines, search, or clstr.news URLs).",
            "type": "string"
          }
        },
        "required": [
          "cluster_id"
        ],
        "type": "object"
      },
      "name": "get_cluster"
    },
    {
      "description": "Get the full chronological timeline of one situation. A situation is an ongoing storyline (story arc) that groups related news events over time; it carries a maintained summary plus every event in order, so you see not just what happened but how it developed. Each event is a cluster (one happening assembled from many outlets and deduplicated) with its date, a significance score (1 to 10, where 8 and above is exceptional), a source count, and a canonical clstr.news link. Use this to brief on a story's history or answer 'how did this develop'. Get a situation id from search_situations or get_top_situations, or from a clstr.news URL. An id that was retired when two situations merged resolves to the successor, flagged with merged_into_shown. Cite the returned URLs.",
      "inputSchema": {
        "properties": {
          "situation_id": {
            "description": "Situation id or slug (from other tools or clstr.news URLs).",
            "type": "string"
          },
          "timeline_before": {
            "description": "Cursor: cluster id (a UUID) from a previous page, to continue past it.",
            "type": "string"
          },
          "timeline_limit": {
            "description": "Timeline entries to return, newest first. Default 50, and 50 is also the maximum without an API key. A free key raises it to 500: https://clstr.news/developers",
            "maximum": 50,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "situation_id"
        ],
        "type": "object"
      },
      "name": "get_situation_timeline"
    },
    {
      "description": "List the situations developing right now, ranked by relevance: a blend of significance, how many outlets are covering it, and how recently it moved. So a lower significance score can rank above a higher one, and that ordering is intentional; do not re-sort. A situation is an ongoing storyline that groups related news events over time and carries a maintained summary and a source count (how many outlets are behind it). Optionally filter by category, by country, and by time window (24h, 7d, or 30d), and switch the ordering to newest activity first with sort. Use this to answer 'what is going on in the world', 'what is happening in <category>' or 'what is happening in <country>' when there is no specific topic yet, then open any result with get_situation_timeline. When there are more, the result ends with a cursor to page further. Pass summary: \"full\" to get each situation's maintained summary in full, instead of a one-line preview, without a follow-up call per result; full summaries in a list are not enabled for every account, so read summary_mode in the result to see what you got, and use get_situation_timeline for one situation's summary in full. Cite the returned URLs.",
      "inputSchema": {
        "properties": {
          "category": {
            "description": "Optional category filter.",
            "enum": [
              "politics",
              "business",
              "technology",
              "health",
              "sports",
              "culture",
              "international",
              "crime"
            ],
            "type": "string"
          },
          "country": {
            "description": "Optional country filter: comma-separated ISO 3166-1 alpha-2 codes, for example \"US,GB\". Up to 10 at once. A situation matches if it is covered in any of them.",
            "maxLength": 200,
            "type": "string"
          },
          "cursor": {
            "description": "From a previous result, to page further. Pass the same filters alongside it: a cursor resumes only under the filter set that produced it.",
            "type": "string"
          },
          "limit": {
            "description": "Max situations to return. Default 15.",
            "maximum": 25,
            "minimum": 1,
            "type": "integer"
          },
          "sort": {
            "description": "Ordering. 'relevance' (the default) blends significance, source count and recency; 'recent' is newest activity first.",
            "enum": [
              "relevance",
              "recent"
            ],
            "type": "string"
          },
          "summary": {
            "description": "How much summary text each row carries. 'preview' (the default) is a one-line preview; 'full' returns the maintained summary in full, so you do not need a follow-up call per result. On get_top_situations, 'full' is not enabled for every account: read `summary_mode` in the result to see which mode was actually served, and get_situation_timeline always returns one situation's summary in full. 'full' returns each situation's complete summary, up to roughly 300 words per row, so keep limit small when you use it.",
            "enum": [
              "preview",
              "full"
            ],
            "type": "string"
          },
          "window": {
            "description": "Time window. Default '7d'.",
            "enum": [
              "24h",
              "7d",
              "30d"
            ],
            "type": "string"
          }
        },
        "required": [],
        "type": "object"
      },
      "name": "get_top_situations"
    },
    {
      "description": "Search the news by topic to find matching situations and events. A situation is an ongoing storyline (story arc) that groups related events over time; an event, called a cluster, is one happening assembled from many outlets and deduplicated into a single item, so you get one event rather than 20 near-duplicate headlines. Results come back grouped under their situations, each with a one-line summary, a significance score (1 to 10, where 8 and above is exceptional), a source count (how many outlets are covering it), and a canonical clstr.news link. Use this to answer 'what is happening around X' for a topic, company, country, or event. Then open a result with get_situation_timeline for the full history, or get_cluster for one event's detail. Results are relevance ordered and bounded to the top matches: when there are more, the result ends with a cursor to pass back, and each page counts as one search against your cap. Pass summary: \"full\" to read each match's summary untruncated instead of one line. Cite the returned URLs. (Requires sign-in, or a free API key: https://clstr.news/developers)",
      "inputSchema": {
        "properties": {
          "cursor": {
            "description": "From a previous result, to page further. Each page counts as one search against your cap.",
            "type": "string"
          },
          "days": {
            "description": "How far back to search, in days. Default 7, maximum 30.",
            "maximum": 30,
            "minimum": 1,
            "type": "integer"
          },
          "limit": {
            "description": "Max events to return. Default 15. They are grouped under their situations in the result, so you may see fewer situation headings than this number.",
            "maximum": 25,
            "minimum": 1,
            "type": "integer"
          },
          "query": {
            "description": "Topic, entity, company, country, or event to search for.",
            "maxLength": 200,
            "type": "string"
          },
          "summary": {
            "description": "How much summary text each row carries. 'preview' (the default) is a one-line preview; 'full' returns the maintained summary in full, so you do not need a follow-up call per result. On get_top_situations, 'full' is not enabled for every account: read `summary_mode` in the result to see which mode was actually served, and get_situation_timeline always returns one situation's summary in full.",
            "enum": [
              "preview",
              "full"
            ],
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "search_situations"
    }
  ]
}

What the leaf hashes

{"body":"1e3eb04ad9fa656127e4f3a2d466ab5981320baa666ed0761376474b0b6af0d8","id":304855,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793056115012859,"prev":null,"subject":"651c6ad6-cbdb-476b-8c42-11e9b1511dd7","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. 0xc4803490a6c1fde300bc64d6f4ead7d86876f1208ba5553cb37b6afeaa915a4d
  2. 0x5dfa1e14d922b7925fe48b4a75ef295e754ae24447e107511e2b0b840bf1fe67
  3. 0xa292b7822951fa6eee372303ac0ed018d91f710036e73cbe0cba9c89f325d029
  4. 0xaf523b80e863c4bf43d6df020cc8faa1e95bf617a01872729032d7f88898239d
  5. 0x60a7ee8f717907c62e89bfd5f3e90a7d95cb56e2a2884bbfac20ee6661471d5d
  6. 0x847fcd0da5aa1ef220deb27e29285bcc5d17f9681c7889fe4204a2da7814464e
  7. 0x2c1ef7e0d433b514977c5f2b0c8cd242c4960bd5c76ee6a7656ef59b7cafefc8
  8. 0xd71ad18326c50ae37cb94b67ba44ac2f4be8066a325dd5c3b38171b214ffa48c
  9. 0xc05eb5ce75a960c54f3533d2073c1a7df2670a0752902fe88eccebc1123212aa
  10. 0xd7fa137fd7aae82c376f90cb43e2e9cf874e762e0293fed3b902e8bde35cc36b
  11. 0x463fef738ef71a01d4aa9ac1c6836fcf6802cdaa7de01bbe42397d79d35d8671
  12. 0x4d1a020de7fc0aa076daeb62ebb904d51ac6c607b605eb63a7855f34d7b69f1b
  13. 0x641fba1f23ec69d96721e34ace1926954d835b9614cb5eae215a069c056399b8
  14. 0xdbe2e8dd65ea1248b2936612538f18268abd5cf27ebdab3737694571ad496004
  15. 0x9f68b5e15459cb62b8c0cd4c124fa61c74147b4a5755a200fbecd21a581635d1
  16. 0x123ec8bee20ddc55223eeef5a4f4d6c4b6416515adbb911c56759f5cde56e452
  17. 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON