← The evidence ledger
Evidence row 561319
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint ec7fa371-b961-4f16-8d81-51f4725d350b
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 02bc31c30d9fbefbf49abbe40e5f10abeb2ded4d5014e31b33a9e147efc3ea3d
- Leaf
- 0xf42d7500221cd57372fce92c8a1270c411c65a14f214c0f767a969cdb9dd7085
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_rule",
"directory_mcp"
],
"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":"02bc31c30d9fbefbf49abbe40e5f10abeb2ded4d5014e31b33a9e147efc3ea3d","id":561319,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793136839128314,"prev":null,"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 (273461 rows).
- 0xf42dde366e06e872b593a63fe9aeae54f61692cfa42898c884be7ec04ca97a0e
- 0x85ac2079aa0cc7186292bb4b4391a8ca4ce5b6afe58409085746c791b01892a2
- 0x669d05334d2c23fd4af46e948d6e7f82f0ff50e0db7e8f1ef96414c6776d1fb5
- 0xde31fbdc7fadaa4aecbbf730eeb46aad692a8b72117411c2f10194c2fa992fe4
- 0x998b07645cda45c93a1b54ba5d183ab813125d93153e2dce5d60804dc236446a
- 0x923307d12a17d5ba88a9833e15573974ba3ad556444c43c659c7f8f89ba328fb
- 0x975fbfb97adad20b4a66b3d2becb0d4e39ae899c66eceb294ba00358a52d86fb
- 0xe8362ea3a2bac4494d9f3c9a92c23173a7d9866abb62480a4357a80e4da7c4ba
- 0x851e1688156148bed1a19931f7473ec6c12077638088285a7028d5938b4b6acb
- 0x7ee2077cc5ce2f02a1c96750fb3cd8cc6733d62aa9ced705f57c7a5995526139
- 0xd7e1d15523cb9df856351d9c5d85a0e7b6456e5dbec143452707410c827472e5
- 0xd80cea574304ef1eee7c8b03c1efcaf66eb83498acb1756c4e37eb1d063b48be
- 0x47993ad5e402c748d96928c5127292d12f5f590d15cf544698f6bb348ad7dc9b
- 0xce1471491ffb52101d7cd9884cca0fb37a9496f6e8250375054907d24a35d04f
- 0x56f7109d4cde42492651beb1237c13cdcbf95e6fee2b2482391a2388e04c4629
- 0x8745bd887f5ce9f7a49558fd2b04cdcd97a05ea9f8a23f62d0e80cb13d328b0f
- 0xdf1105afdc109de3c09a98fc8a3864159ad964e6f49b635c105a27a1e1f14310
- 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
- 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
- Day root
- 0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
- Chained
- 0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
- Published
- On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4