addrbookFor publishers
← The evidence ledger

Evidence row 814834

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint ec7fa371-b961-4f16-8d81-51f4725d350b
Recorded
Previous row
#561319
Body SHA-256
25ef36706008872ef4c59b17ac376baa52d74391e8a932519a3ed32d24819b28
Leaf
0x3eff2a5d6939bfe21d8682ea6eecdd13f422bdf4f561bdecd092e18ee3d02662

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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "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"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "stores_get"
    }
  ]
}

What the leaf hashes

{"body":"25ef36706008872ef4c59b17ac376baa52d74391e8a932519a3ed32d24819b28","id":814834,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793232366166505,"prev":561319,"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. 0x3efee8fe893de4a15bfbd6c0f1a86e76515f49a35911984b93e0d4825b1184a3
  2. 0xe2055fc345e88637e8676777e0890ae8e9df799e640327b84ae11d30516aea16
  3. 0xc10f6a74926872844e6ceed0044927a118c73663c227680370269270d4312d49
  4. 0x2a9cca69609765597b0b3a7506577b8b819a615855738d38e3e5b558435961fe
  5. 0xa0a623dda5155b832cc4efcd33f1c97fc63ae689ef2a069870ad4a5e9c51fdd7
  6. 0x2c8eae043d66a3a7e3ebd70fbee0cfe11d07359a2ee68daaa967a8f263fb496e
  7. 0xfe37176d7ddc6aa23ccbed4ad8a59c7488de634ec05e726c77b8052f328e5eff
  8. 0xad8fe7c2d4d711a8fecaeb95a02c41372bcab4b932dc3989c0723f256a780bf6
  9. 0xd1ca9c0b65dd7aae00f2789ea72b8fe40a47789979b75c40199414e8b000c796
  10. 0xe69139de230c4a61700ba375e79cd3f2dd7e6f962d2f6bdd8a4ad7808a16973a
  11. 0x838159efd8bb402ff1ebeee78da71798ecbfc6d4c4b58780d4eaa72fb5ed6f9c
  12. 0x2adbd5642efd116b9eaf8b0cfc2ce5d9bb0d466768f63919faa1fb8c7489536f
  13. 0x1650f053e7c17563e375049a822d3f2ee03ea31ce2893a0e80a48747f738f1ca
  14. 0xfd10c7ee22418679d618a048206ccbf1219e97c4af44a5180884b0b3d02c18e8
  15. 0xa03bd318a195be3bd16f335c7e189443bea4f1f439087a7ac19afec9fa97f9be
  16. 0x1c3764b490d23b94e5ac838c89f8d3850dedb0819196f367da2479c7a88bf2c0
  17. 0xd76435ead496863d8b0bfab3434f54cd11da3c49d104fc4064b9cb3381567bbd
  18. 0xd56e61af23709ed9f460471e3c08400c0142ee83e1fd9057e46350d12edf9c07
Day root
0xc050555c6b023f2aefb6536efb9f0760b92c30a0d06c572b7daf63db259ea17c
Chained
0x4cde8bae2042512e1bec11650628f0293556311cc4ea74d99ffddf02b671a7d6
Published
On Arc Testnet, block 69753317: 0x9e85c340732f416e431b111fae72f7624870125f7f379af2732eb6c2ba8cf6a1

How to check it · This row as JSON