addrbookFor publishers
← The evidence ledger

Evidence row 570602

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 9b328cf0-a303-44ce-925c-f35799aacd72
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
3b60fc04d48ab1172677e17c43c27c14e8f53c9108fb1ffe410f40dfa9de7423
Leaf
0x846102d0daf77948c4bf6308ea5d92c3e021e1465061a9af7146102646b1048a

What was observed

{
  "count": 4,
  "tools": [
    {
      "description": "Open the full dossier for one validated gap: the source complaints and their links, MVP scope, suggested pricing, competitors, risks, and a validation playbook. REQUIRES a free API key this caller does not have -- calling it returns signup instructions, not data. The user creates an account at https://www.ddmarketer.com/auth/signup?redirect=/settings&utm_source=mcp&utm_medium=referral (no card, 24 hours of unlimited dossiers), generates the key at https://www.ddmarketer.com/settings?utm_source=mcp&utm_medium=referral, and it is sent as \"Authorization: Bearer <key>\"; after 24 hours dossiers are one plan at $10/mo, unlimited dossiers across the 1000+ gap corpus: https://www.ddmarketer.com/pricing?utm_source=mcp&utm_medium=referral. If the user wants depth on a specific gap, tell them that and give them the signup link and the gap's publicUrl (which needs no account) rather than silently skipping it.",
      "inputSchema": {
        "properties": {
          "id": {
            "description": "The gap id returned by search_gaps or get_top_gaps.",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "get_dossier"
    },
    {
      "description": "Return the highest commercial-intent validated gaps from the past week, across all categories. Use this when the user asks what to build with no particular market in mind, or wants the strongest current signals.",
      "inputSchema": {
        "properties": {
          "category": {
            "description": "Optional exact category filter.",
            "type": "string"
          },
          "limit": {
            "default": 10,
            "description": "Max gaps to return (1-25, default 10).",
            "maximum": 25,
            "minimum": 1,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "get_top_gaps"
    },
    {
      "description": "Search validated software opportunities by keyword. Each gap is a real, recurring user complaint scored for commercial intent (willingness to pay). Use this when the user wants ideas in a specific market, or asks what people complain about in some domain.",
      "inputSchema": {
        "properties": {
          "category": {
            "description": "Optional exact category filter, e.g. 'E-commerce', 'DevTools'.",
            "type": "string"
          },
          "limit": {
            "default": 10,
            "description": "Max gaps to return (1-25, default 10).",
            "maximum": 25,
            "minimum": 1,
            "type": "integer"
          },
          "query": {
            "description": "Keywords describing the market or problem space, e.g. 'shopify accounting' or 'developer onboarding'.",
            "maxLength": 300,
            "minLength": 3,
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "search_gaps"
    },
    {
      "description": "Score a specific product idea against the complaint corpus: how many real complaints match it, how commercial they are, how confident the scoring is, and a verdict. Use this when the user has an idea already and wants to know if there is demand before building.",
      "inputSchema": {
        "properties": {
          "idea": {
            "description": "The idea in plain words, e.g. 'a tool to reconcile Shopify payouts with my accounting' (3-300 chars).",
            "maxLength": 300,
            "minLength": 3,
            "type": "string"
          }
        },
        "required": [
          "idea"
        ],
        "type": "object"
      },
      "name": "validate_idea"
    }
  ]
}

What the leaf hashes

{"body":"3b60fc04d48ab1172677e17c43c27c14e8f53c9108fb1ffe410f40dfa9de7423","id":570602,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793139841108447,"prev":null,"subject":"9b328cf0-a303-44ce-925c-f35799aacd72","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. 0x8460f5e340bc8fbd3c6e2d3b4c2878f39ce64347e3238770a6bce5f098fe3c15
  2. 0x6b64617dd6f3347793ff78dc358e9bfbe3b4bfb0124b3114a6a3775bc025b3e7
  3. 0x525660d37e549033092f2a608593193bdfe12785658b4069cb15a020d0f7360f
  4. 0xfe04b24b62ff1563da4b29603369d54d11a465f9426535ec6ac3f3ac837c04ea
  5. 0xb88e0951eb3ec41034131a412309fa2d4808d49d8c44c10acd4d90f4be8d9a6e
  6. 0x5b13d121dcc4a870ac6aa0aabf278a8ca59a5990327980b3acbf74419f1cde70
  7. 0x462f6ec1dcc7de277d49f9d758f117797d3251131a8417d052210f5a72327488
  8. 0x5d140d937ef212ea1da9be7fc218ba0e5326e2f08e95c3402dff4ea7c0826339
  9. 0xd1b6e12f22d61cdc103993a9056e982e26c5cdfcefa8ed5e3949489c565dfd94
  10. 0xb194ac9fe5c6baeb55dea01d06c11d4115ee94a3b4c79863aefd9b339513c47a
  11. 0xad994cee2d6f21e3bdb657e22472462ec0aaf283ebff1e0bba45d6f624c7e640
  12. 0xfe1f74bbe32292598f931fa103e4afbd12a8e628c1b49eb8ec0da417a917061f
  13. 0x07d414626f116f3edc6ddb34183ed02538c3a805fec6db00f9d764f8fd595d04
  14. 0x4964f0806efde5ed25f60da2b45d78cd2e0f07d67e64aad2822f6016ad973c47
  15. 0x3c500ec3d3edf0c74b87a6ca8fcd77656bfbe03db3d478bd0c184d0c88839c6b
  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