addrbookFor publishers
← The evidence ledger

Evidence row 1016395

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint ec7fa371-b961-4f16-8d81-51f4725d350b
Recorded
Previous row
#814834
Body SHA-256
01897bc5b1527cca84d3f0e0c32631f9e38b45b5be88a5c278c5e9c407edc50a
Leaf
0xb9fa94d8737b4739605c3bb59ee02fd161a6f9a9b82a04dbd95eaca38921f102

What was observed

{
  "count": 14,
  "tools": [
    {
      "description": "Use this when the user asks what changed in a store: chart moves, featuring, launches, delistings, metric moves or MCP changes, newest first with counts per type.\nDo not use for a chart's full current order; use charts_get.",
      "inputSchema": {
        "properties": {
          "apps": {
            "description": "Listing refs or OpenApps URLs.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "region": {
            "description": "ChatGPT country code (default us).",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "since": {
            "default": "-24h",
            "description": "Window start: ISO-8601 or -24h, -7d.",
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          },
          "types": {
            "description": "Default: all but release_change.",
            "items": {
              "enum": [
                "rank_move",
                "chart_enter",
                "chart_exit",
                "featuring_enter",
                "featuring_exit",
                "launch",
                "toolset_change",
                "listing_change",
                "release_change",
                "mcp_status_change",
                "delisted",
                "metric_change"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "store"
        ],
        "type": "object"
      },
      "name": "changes_list"
    },
    {
      "description": "Use this when you need a chart now or at a past time, with movement and 1-based positions.\nDo not use for a listing across charts; use listings_profile.",
      "inputSchema": {
        "properties": {
          "at": {
            "description": "Past time: ISO-8601 or -24h, -7d.",
            "type": "string"
          },
          "chart": {
            "description": "Chart name; stores_get lists them.",
            "type": "string"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "kinds": {
            "description": "e.g. claude:connector; stores_get lists them.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "region": {
            "description": "ChatGPT country code (default us).",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "required": [
          "store",
          "chart"
        ],
        "type": "object"
      },
      "name": "charts_get"
    },
    {
      "description": "Use this when you need when and where apps were featured, per app or home shelf, over at most 30 days.\nDo not use for current shelf order; use charts_get.",
      "inputSchema": {
        "properties": {
          "app": {
            "description": "Listing ref or OpenApps URL.",
            "type": "string"
          },
          "at": {
            "description": "Past time: ISO-8601 or -24h, -7d.",
            "type": "string"
          },
          "chart": {
            "description": "Chart name; stores_get lists them.",
            "type": "string"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "region": {
            "description": "ChatGPT country code (default us).",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "since": {
            "default": "-24h",
            "description": "Window start: ISO-8601 or -24h, -7d.",
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "required": [
          "store"
        ],
        "type": "object"
      },
      "name": "featuring_history"
    },
    {
      "description": "Use this when OpenApps' tools or data fail the user: an error, data the user says is wrong (such as an app bound to the wrong listing), a missing capability, or something confusing. Ask the user before sending a report they did not ask for. It is stored privately with the caller's account and client; no reply comes in this conversation. Summarize; never include secrets or personal data.\nDo not use for other servers or the client app; it does not finish the user's task.",
      "inputSchema": {
        "properties": {
          "details": {
            "type": "string"
          },
          "initiator": {
            "description": "user if the user asked for it, else model.",
            "enum": [
              "user",
              "model"
            ],
            "type": "string"
          },
          "issue": {
            "enum": [
              "bug",
              "wrong_data",
              "missing_capability",
              "confusing",
              "other"
            ],
            "type": "string"
          },
          "request_id": {
            "description": "From an error answer.",
            "type": "string"
          },
          "subject_id": {
            "description": "Ref, slug or URL.",
            "type": "string"
          },
          "subject_type": {
            "enum": [
              "app",
              "listing",
              "binding",
              "publisher",
              "tag",
              "chart",
              "server"
            ],
            "type": "string"
          },
          "summary": {
            "description": "One line.",
            "type": "string"
          },
          "tool": {
            "type": "string"
          }
        },
        "required": [
          "issue",
          "summary",
          "initiator"
        ],
        "type": "object"
      },
      "name": "feedback_send"
    },
    {
      "description": "Use this when ChatGPT deep research needs a document for an id returned by search: listing, app, tag, chart or MCP toolset.\nDo not use for ids outside search results.",
      "inputSchema": {
        "properties": {
          "id": {
            "description": "A search result id: listing:{store}:{plugin_id}, app:{slug}, tag:{id}, chart:{store}:{chart} or server:{url}.",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "fetch"
    },
    {
      "description": "Use this when the user asks which apps lead a store by a published number. claude: installs, popularity_score, trending_score, gh_stars; cursor: dir_installs, dir_stars.\nDo not use for chart positions; use charts_get.",
      "inputSchema": {
        "properties": {
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "kinds": {
            "description": "e.g. claude:connector; stores_get lists them.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "metric": {
            "description": "Metric name; stores_get lists each store's.",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "required": [
          "store",
          "metric"
        ],
        "type": "object"
      },
      "name": "leaderboards_get"
    },
    {
      "description": "Use this when you need a listing profile, or up to 5 (Pro): its app, country availability, ranks, metrics and MCP tools. Stale or refused countries read unknown.\nDo not use for discovery; use listings_search.",
      "inputSchema": {
        "properties": {
          "apps": {
            "description": "Listing refs or OpenApps URLs.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "include": {
            "default": [
              "ranks",
              "metrics",
              "tools"
            ],
            "description": "Sections per profile.",
            "items": {
              "enum": [
                "ranks",
                "metrics",
                "tools"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          }
        },
        "required": [
          "apps"
        ],
        "type": "object"
      },
      "name": "listings_profile"
    },
    {
      "description": "Use this when you need an app's ref from its name, its publisher, a brand it works with or what it does (\"create jira ticket\"); one row per app, best match first.\nDo not use for popularity or rankings; use charts_get.",
      "inputSchema": {
        "properties": {
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "kind": {
            "enum": [
              "app",
              "connector",
              "plugin",
              "desktop_extension",
              "directory_plugin",
              "directory_mcp",
              "bot",
              "unlisted"
            ],
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "publisher": {
            "description": "Publisher name, in any form.",
            "type": "string"
          },
          "query": {
            "description": "Words in app names, descriptions or publishers.",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "listings_search"
    },
    {
      "description": "Use this when you need store sizes, weekly launches, app kinds or MCP ecosystem statistics.\nDo not use for app profiles or rankings.",
      "inputSchema": {
        "properties": {
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "market_get"
    },
    {
      "description": "Use this when you need a tracked app or server's stored MCP tools or changes. at selects a past snapshot; diff_from compares versions.\nDo not use for arbitrary URLs; only tracked servers.",
      "inputSchema": {
        "properties": {
          "app": {
            "description": "Listing ref or OpenApps URL.",
            "type": "string"
          },
          "at": {
            "description": "Past time: ISO-8601 or -24h, -7d.",
            "type": "string"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "diff_from": {
            "description": "Earlier toolset: snapshot hash or time.",
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "server": {
            "description": "MCP server URL.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "mcp_toolset_get"
    },
    {
      "description": "Use this when the user asks which apps are new in a store since a time, by launch date or else the day each went live.\nDo not use for rank or toolset changes; use changes_list.",
      "inputSchema": {
        "properties": {
          "category": {
            "description": "Category title (ChatGPT).",
            "type": "string"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "kinds": {
            "description": "e.g. claude:connector; stores_get lists them.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "since": {
            "default": "-24h",
            "description": "Window start: ISO-8601 or -24h, -7d.",
            "type": "string"
          },
          "sort": {
            "default": "released_at",
            "enum": [
              "released_at",
              "first_seen_at"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "required": [
          "store"
        ],
        "type": "object"
      },
      "name": "new_list"
    },
    {
      "description": "Use this when the user asks which apps are popular in a store over the last month: OpenApps Rank, a 28-day aggregate of its popularity charts, with tier and momentum.\nDo not use for one day's chart order (charts_get) or published counts (leaderboards_get).",
      "inputSchema": {
        "properties": {
          "chart": {
            "description": "Chart name; stores_get lists them.",
            "type": "string"
          },
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "required": [
          "store"
        ],
        "type": "object"
      },
      "name": "scores_list"
    },
    {
      "description": "Use this when ChatGPT deep research needs listings, apps, tags (query tag:<id>), charts or tracked MCP URLs. Returns typed ids for fetch.\nDo not use for rankings or events; use charts_get or changes_list.",
      "inputSchema": {
        "properties": {
          "query": {
            "description": "Words in app names, descriptions or publishers.",
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "search"
    },
    {
      "description": "Use this when you need stores, app counts, countries, freshness, charts or metrics. Pass store for chart names. guide returns a playbook's steps: weekly_brief (a store's week), competitor_watch (compare apps), audit_my_server (an MCP server's tools).\nDo not use for rankings; use charts_get.",
      "inputSchema": {
        "properties": {
          "context": {
            "description": "The user's goal, briefly.",
            "type": "string"
          },
          "guide": {
            "enum": [
              "weekly_brief",
              "competitor_watch",
              "audit_my_server"
            ],
            "type": "string"
          },
          "response_format": {
            "enum": [
              "concise",
              "detailed"
            ],
            "type": "string"
          },
          "store": {
            "enum": [
              "chatgpt",
              "claude",
              "cursor",
              "grokbot",
              "perplexity",
              "muse"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "stores_get"
    }
  ]
}

What the leaf hashes

{"body":"01897bc5b1527cca84d3f0e0c32631f9e38b45b5be88a5c278c5e9c407edc50a","id":1016395,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793273809231463,"prev":814834,"subject":"ec7fa371-b961-4f16-8d81-51f4725d350b","subject_kind":"endpoint"}

Proof

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

  1. 0xb9fafcbd5985d5b56f6be45b5823bbbcf6b4e626c2a07262cc115c8ace283ac8
  2. 0x460ca9f04a3d98edbc8ab74806e748f37ff050dee07e2ce20f09462a38315305
  3. 0xed20bffc482c569a3172412052230a34d0ff3acbb450fc6cf9d04e18becce8f2
  4. 0xa77018c3fe0aa9d3d54ce5bdd5105b603d790ccaf41c0f9fa5e1860d21e6a870
  5. 0xacdc0f2a3f2969b909a4a1977e4f5c5d7c003d5f460dab5d168b5d5839a2e93b
  6. 0xabee12c58c999ab7742d434f26d515a8020bf02a1cb85181ef4943a16a535c58
  7. 0x6193a1690ebebed7bbe03978d0755c964ae45db7805c076f0384b20a7018ec8a
  8. 0xd5c9ae1c67f714c6fed3971fd0f3f836071543db04eaea3bb1ca2678c90950bb
  9. 0x3f5cbe4aa3e3bb90b9159e9f9d9e8e64262cf0934e078cbf64a543193dcb2ca6
  10. 0xe9870f89db5033cfb7905c0d55d2b2f1f408c0d9467949efc50baeed3d49ad2b
  11. 0x9e2ce15bd9a3123a4c4edbe5cb053ae49c7a7cb422253516fb25a94aa7ea8a7b
  12. 0x3761ac585bba38d019d79faeb8033cda81535c2592ac436cd3fac43d0150c4a5
  13. 0x5fd8a52e5459b8c967c68846e64fa51d631a648282ae3fbd99829c3b4cfdb1a1
  14. 0x25bdeb6e977b537e5ffb55862bdb08b7a547e08d655551b6a97e31264fefa58a
  15. 0xaa1d19094c2ce6d011a3c40533fa7efee207719d6c482ffc47018b28e5518acc
  16. 0xef5d5572aac8f06b61579b7167b369fcb479d9027d4037dc9cacff9e3a26ffd2
  17. 0xa1fa2e97e71ad6e802f325afd74bb7095901f2060529c9739182a1233f8804bc
  18. 0xe01539ac4c9f9cdf265a9e5c6d99c8da11e70ff0c7175fb23e402d33b9d79785
Day root
0xc050555c6b023f2aefb6536efb9f0760b92c30a0d06c572b7daf63db259ea17c
Chained
0x4cde8bae2042512e1bec11650628f0293556311cc4ea74d99ffddf02b671a7d6
Published
On Arc Testnet, block 69753317: 0x9e85c340732f416e431b111fae72f7624870125f7f379af2732eb6c2ba8cf6a1

How to check it · This row as JSON