addrbookFor publishers
← The evidence ledger

Evidence row 300849

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 31b42ba2-e468-4fa5-a56c-3411c4ab385d
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
59a7277c82cf30770a702365f141040ed6cebb1ff0d5fe82f356b3f5461182ce
Leaf
0xc1baeb069f01b9123a9d1aef72890d8a40a9e6f28ec60d8f461d05afe3150549

What was observed

{
  "count": 5,
  "tools": [
    {
      "description": "Evaluate one or more feature flags for a given context and get their resolved values. Builds `query { root(context: <context>) { <selection> } }`. Provide `selection` = the flag fields to read (e.g. `exampleFlag anotherFlag { nestedField }`) and `context` = the evaluation context (environment + user/attributes). Every field must supply all of its arguments (Hypertune reduces the flag logic to a JSON result). Use hypertune_list_flags / hypertune_introspect first if you don't know the flag names.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "context": {
            "additionalProperties": {},
            "description": "Evaluation context object, inlined as the `context` arg. e.g. {\"environment\":\"production\",\"user\":{\"id\":\"u_123\",\"email\":\"a@b.com\"}}. Omit to return the flag LOGIC instead of a reduced value.",
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "selection": {
            "description": "GraphQL selection of flag fields under root, e.g. `exampleFlag` or `homePage { showBanner } exampleFlag`.",
            "type": "string"
          }
        },
        "required": [
          "selection"
        ],
        "type": "object"
      },
      "name": "hypertune_evaluate"
    },
    {
      "description": "Fetch the underlying LOGIC of flags without reducing them — i.e. `query { root { <selection> } }` with no context. Returns the flag's conditional expression / rules rather than a single resolved value, useful for inspecting how a flag is configured. If the schema requires a context arg you can still pass a partial one via `context`.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "context": {
            "additionalProperties": {},
            "description": "Optional partial context, inlined as the `context` arg if the schema requires it.",
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "selection": {
            "description": "GraphQL selection of flag fields under root, e.g. `exampleFlag`.",
            "type": "string"
          }
        },
        "required": [
          "selection"
        ],
        "type": "object"
      },
      "name": "hypertune_get_logic"
    },
    {
      "description": "Run a GraphQL introspection query to discover the project's schema — all types and fields, including the available flags and the shape of the evaluation context. Best-effort: some edge deployments disable introspection, in which case this returns a clear error (use hypertune_query with a known flag name instead).",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "hypertune_introspect"
    },
    {
      "description": "List the project's top-level feature flags (the fields of the query root type) with their return types and descriptions, derived from GraphQL introspection. A convenient first call to see what flags exist before evaluating. Requires introspection to be enabled on the edge endpoint.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "hypertune_list_flags"
    },
    {
      "description": "Run an arbitrary GraphQL query (and optional variables) against the Hypertune edge endpoint. Power-user escape hatch for full control — each Hypertune project has its own generated schema, so this handles any flag shape, nested selections, inline enum literals, or variables the convenience tools can't express. The query root field is `root(context: ...)`.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "query": {
            "description": "A complete GraphQL query string, e.g. `query { root(context: {environment: \"production\"}) { myFlag } }`.",
            "type": "string"
          },
          "variables": {
            "additionalProperties": {},
            "description": "Optional GraphQL variables object matching the query's declared variables.",
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "hypertune_query"
    }
  ]
}

What the leaf hashes

{"body":"59a7277c82cf30770a702365f141040ed6cebb1ff0d5fe82f356b3f5461182ce","id":300849,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793053684939922,"prev":null,"subject":"31b42ba2-e468-4fa5-a56c-3411c4ab385d","subject_kind":"endpoint"}

Proof

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

  1. 0xc1ba9c33831b489af55ea14e5a1c2427f0c1e16fa1443f823533c6f01313f6cb
  2. 0xc722dcf19b3813332fd16bfd690fbfde6a039b2750a8d06cd4b12786888fed19
  3. 0x2b8bb82ac55b7107a95eed884f2068ceb4b20ee85e39ffadf2d7ccda6e38ba7d
  4. 0xa6774e252ac3a35939e9f12d944f64eeebbe368ae82c288f6491baea050716d8
  5. 0x1c738f09fb0578acfda627011a9551800de31a8e2ad27bdb8e61b8e3a7564494
  6. 0x8b43670b22aabe92abfd6f1cb649d1e783bfd4c8974933ccbd27827ad13dbcc3
  7. 0xc8dedef692d822f3c961f0e1aeea47f8be8c77c473dd1b7d7e7207f0c6ed003a
  8. 0x0f4c71ef9de731b9eb83de320af2141bafc39ff37865c7f10d636ab53412b10f
  9. 0xb2d03cb40383e11844f7bf1442a1332cabd2c046f1ad5bb4f874e104f230601f
  10. 0xca616bf13a5c5fdcd32227c93ae0cdf02d523b7d9e425f5f738ddefc7d481c99
  11. 0xeab236b8d15592c4f51859e02cc12d6b7223fc6321fdb9fa89e4d5e6edc3470b
  12. 0x111576180a2fecebcaf560e6b72ed8cefedaacb8c607539ece417b7465831f66
  13. 0x96eae331a78c1c9248bc58130ff83d31b884760a51fe7191de2a39105ae7c072
  14. 0xdbe2e8dd65ea1248b2936612538f18268abd5cf27ebdab3737694571ad496004
  15. 0x9f68b5e15459cb62b8c0cd4c124fa61c74147b4a5755a200fbecd21a581635d1
  16. 0x123ec8bee20ddc55223eeef5a4f4d6c4b6416515adbb911c56759f5cde56e452
  17. 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON