addrbookFor publishers
← The evidence ledger

Evidence row 566154

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint ededf834-2031-445b-bdd5-23477453b9a5
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
4f6d3cbfc924fb6ea25b77e8c7862d6eba60c28a4b6a827cefdb63ea327b2613
Leaf
0x90063845bfe3c246d637010fb8f8b3dd6c3b4f38afc112e54d78fe458b2915ed

What was observed

{
  "count": 5,
  "tools": [
    {
      "description": "Returns turva.dev's own agent-readiness score from an independent public scanner (isitagentready.com), including category sub-scores, with the measurement date and a link to the scanner's start page, where a new check can be run (the link does not open the recorded reading). Use this when a user asks how turva.dev scores, whether its claims are verifiable, or what proof backs the audit service. For web-security scan results, which are a separate measurement, use get_security_evidence instead. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_agent_readiness"
    },
    {
      "description": "Returns who runs turva.dev and the official ways to reach it: the operator and business details, the email address, the Signal link, the LinkedIn profile, the correspondence languages, the first-reply time and the access an audit needs. Use this when a user asks who is behind turva.dev, how to contact it, how to start an audit or what access has to be granted. For what is sold and what it costs use get_services instead. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_contact"
    },
    {
      "description": "Returns turva.dev's engagement principles: async-only, least access, the result shows up in scanner numbers, and open and verifiable. Use this when a user asks how turva.dev works with clients or what rules an engagement follows. For what is sold and what it costs use get_services instead, and for how to start use get_contact. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_principles"
    },
    {
      "description": "Returns the latest public web-security scan results for turva.dev's own domain (Hardenize, Internet.nl site and mail), each with its scan date. Use this when a user asks about turva.dev's own security posture or wants evidence beyond agent-readiness scores. For the agent-readiness score itself, which is a separate measurement, use get_agent_readiness instead. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_security_evidence"
    },
    {
      "description": "Returns turva.dev's service catalog: the Shopify agent storefront check, agent-readiness audit, advisory, implementation, agent operations, and MCP server design, plus the engagement model and pricing (fixed list prices for the Shopify agent storefront check, audit, advisory and implementation; agent operations and MCP server design on request), and two implementation add-ons that carry a fixed price and are sold only with the diagnosis they follow, bought with it, with its report, or after the report and before implementation starts. The Shopify agent storefront check and the audit each link a published sample report in sample_url, a fictional worked example of the deliverable. Use this when a user asks what turva.dev offers, what it costs, how an engagement works, or what a delivered report looks like. For how to reach turva.dev use get_contact instead, and for the rules an engagement follows use get_principles. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_services"
    }
  ]
}

What the leaf hashes

{"body":"4f6d3cbfc924fb6ea25b77e8c7862d6eba60c28a4b6a827cefdb63ea327b2613","id":566154,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793138377490633,"prev":null,"subject":"ededf834-2031-445b-bdd5-23477453b9a5","subject_kind":"endpoint"}

Proof

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

  1. 0x90067c12b717c0e8ab83a8818325ec75f14cba4a5aec629b20dbb1223eab06a5
  2. 0x298c9935d9cb588b2d156ef8ac5cc3d67f8c9af1f5b057163fa6078c2ce0f0d6
  3. 0x0ca8d7a78e31d2a1d1fb9bd390d7b9c5087611445cc05a7c02174b98b5e4868c
  4. 0x8d374f621ab8dcea58e333567d7218c446dddabc1b46bd01beb3383e0ab23bb3
  5. 0x139181130fcd32ebcf7f815753a9d38dfd0983355969dc807b4481d6cc8d48a5
  6. 0xe91606b5f65e053a6a16a6e1a124c54dbd2771eee16dcf4dcd86c6f2fa6cb74f
  7. 0x13eb879c520cecf6c8b1e5a546e94c03ff20dfce254549e0b2722591caad8ecf
  8. 0xc828922e6e41a757f7622776e5e39dfcccd3154c897f93202df2a2fed05b6356
  9. 0xfe154e7f7f78f891bf744a2e34e7957e6b971b6c54041aa82733fc9120f26d59
  10. 0xf02b3d33d5dbba846eb2804b96aad032d5c4bd7b22f43f176959536e0130e072
  11. 0x8e9c5f6e43e595f47f84f799aabf34754c649742c93a57fc91c20c42baa244b9
  12. 0x3d13b6f855471289691a683ee58cac14977b2531dabc14f9c666e928df0908e6
  13. 0x5c9cbca5bb1d6be4d84e301b4e4c1a280536eb16ee98ed4add9057142c132dde
  14. 0x06e3b43165f5b3c31d850bc32f20b2e25b844564c4e042c141b9748c26a5a600
  15. 0xb4f7223140c8a36cb87a63d77cf617086d9968dc4658f03e102571ebe06e9ed6
  16. 0xfecf3d4646dd4984a13dd715499e842c3fde63692336d97394c2bfd8e877ca5d
  17. 0xf30fddbf4811226c58e8f0daf36fddd79fc5f1356b592bb1d99a8061ddbabe66
  18. 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON