addrbookFor publishers
← The evidence ledger

Evidence row 1054260

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 4921e084-47dd-4476-b095-5d8ba70e61f1
Recorded
Previous row
#559858
Body SHA-256
d3f32dd9784fc58dbd557c3529a78edea06e3242998625d3c776c593645b5587
Leaf
0xf61bcf42da0f1bd079c92c7e5dfb832ba06324073182b4f72cc2d8abd83c9afb

What was observed

{
  "count": 17,
  "tools": [
    {
      "description": "What Tester Exchange is, how credits work, and every available action.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "about"
    },
    {
      "description": "List an Android app that is in Google Play closed testing. The closed track must be published with the opt-in link enabled. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": "string"
          },
          "group_url": {
            "description": "Google Group link if the track uses a group",
            "type": "string"
          },
          "instructions": {
            "description": "What testers should try",
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name",
          "name"
        ],
        "type": "object"
      },
      "name": "add_app"
    },
    {
      "description": "Add tester slots to a live campaign (15 credits each). (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "count": {
            "default": 1,
            "minimum": 1,
            "type": "integer"
          },
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "add_testers"
    },
    {
      "description": "Checkout links for credit packs. A human must complete the payment. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "buy_credits_links"
    },
    {
      "description": "Testers, daily active testers, feedback and the data needed to answer Play Console's production-access questions. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "campaign_report"
    },
    {
      "description": "Pay credits only for the seats friends and the circle don't fill (15 credits per seat); exchange testers then join. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "fill_from_exchange"
    },
    {
      "description": "Who fills the 12 seats of one of the user's apps (friends, swap circle, exchange testers), how many seats are left, what the exchange would cost for them, and the share link. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "friends_status"
    },
    {
      "description": "START HERE. One call gets an Android app its 12 Google Play closed-testing testers: adds the app if needed, opens its test, applies spare credits, and returns progress plus the few steps only a human can do (add our Google Group in Play Console; link a phone to test free, or buy). Call again any time to check progress. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "name": {
            "description": "App name (optional)",
            "type": "string"
          },
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "get_testers"
    },
    {
      "description": "The user's credit balance, invite link, phones linked and open tests. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "my_account"
    },
    {
      "description": "The user's apps and the live status of each testing campaign (active testers, waiting installs, open slots). (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "my_apps"
    },
    {
      "description": "Tests the user is doing as a tester, with verified days and credits earned. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "my_tests"
    },
    {
      "description": "Live platform numbers: members, apps testing, open tester slots, verified tester-days.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "platform_stats"
    },
    {
      "description": "How credits are earned and spent, and credit pack prices.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "pricing"
    },
    {
      "description": "Pause, resume or close a campaign. Closing returns unused credits to the user's balance. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          },
          "status": {
            "enum": [
              "active",
              "paused",
              "closed"
            ],
            "type": "string"
          }
        },
        "required": [
          "package_name",
          "status"
        ],
        "type": "object"
      },
      "name": "set_campaign_status"
    },
    {
      "description": "Public \"help test my app\" page, a ready message and a README badge for one of the user's apps. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "share_kit"
    },
    {
      "description": "Start recruiting testers for one of the user's apps. Costs testers × 15 credits, held in escrow; unused credits go back to the user's balance (credits, not money). (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          },
          "testers": {
            "default": 15,
            "maximum": 30,
            "minimum": 12,
            "type": "integer"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "start_campaign"
    },
    {
      "description": "Free: open a test for one of the user's apps so friends and family can join from the share link. Returns the link and a ready message. Their days are verified by the Tester Exchange phone app. (needs a token)",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "package_name": {
            "description": "Android package name, e.g. com.example.app",
            "type": "string"
          }
        },
        "required": [
          "package_name"
        ],
        "type": "object"
      },
      "name": "start_friends_test"
    }
  ]
}

What the leaf hashes

{"body":"d3f32dd9784fc58dbd557c3529a78edea06e3242998625d3c776c593645b5587","id":1054260,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793313778514644,"prev":559858,"subject":"4921e084-47dd-4476-b095-5d8ba70e61f1","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. 0xf61b517cb218fe9455d886ca6da46406b07a93c8ce9a5d32116131c46cda9c8b
  2. 0x58de1c8801746c95c8e840d4f685bdbd95f333d12d1154b6ddd9898cac95649d
  3. 0x74fdb1f31dffab8f9b4388e44d46627edebd4cd1bff7c7b4a5d9de098120ddad
  4. 0xf83ce76226d66b38d59ced24c6b29e1c6012d49c01d08b6967b6adf3000a9d7c
  5. 0x3e62b508839a6c07d8ad81b5e420863a2f589e828e9688a06666eabe5351c437
  6. 0xd0f417b8d151b7c4072783eef5c566c686eb70c230b5cefddb9c4362a598e414
  7. 0xf4d8091b71e8efc6175472f91d4e8b6274b04bb2ca687e28241f3cd73a2831d6
  8. 0x296bf555ec5487a7eabd5d66354ca309d09174cf0a083f1f16ad8a89e32cccde
  9. 0xe45a8accd9664842a96fa619e9ccc2a395af1ca383b8034a64374e0f00d76803
  10. 0xfc3f03dd9942292cd523bc1e845fd2fe69b6e6ecf0744ed00d42e2ab9c8c9e46
  11. 0xd65db33c850641a512610778bc74c4557534e8cedefa27dfb6c624e384ad13df
  12. 0x9c0281c2a4bfee33b76e469eeb2b2cf128dbede9395403178364aa32378c6d83
  13. 0xe61db4873d922d736073fbcc17a7758f857abc53591bf83c26e95a8c7fdf1d7f
  14. 0xc7119ea806f683838e5f48055d7f1b7fded1f500c6064dabeb8b9a36bba8932f
  15. 0x1dd763930a8023065a24b676469b4f26d92a89cfe71226ced9df379f43ec0f0a
  16. 0x1597ec94933260048e5e583aff1ad0fd44cc49efcd0a994091ed5db4924d7b02
  17. 0xe01539ac4c9f9cdf265a9e5c6d99c8da11e70ff0c7175fb23e402d33b9d79785
Day root
0xc050555c6b023f2aefb6536efb9f0760b92c30a0d06c572b7daf63db259ea17c
Chained
0x4cde8bae2042512e1bec11650628f0293556311cc4ea74d99ffddf02b671a7d6
Published
On Arc Testnet, block 69753317: 0x9e85c340732f416e431b111fae72f7624870125f7f379af2732eb6c2ba8cf6a1

How to check it · This row as JSON