addrbookFor publishers
← The evidence ledger

Evidence row 565431

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 21b4f792-45e0-4001-905b-f6a8c5ac6f33
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
39d3923af2ddd1c78ca67fcc372fdb119369c7ff9eb49741cf2f78c29b609251
Leaf
0xcd0c8bb557c7cc3f0dbf84b7f32fc31fb278e7f55ca1d71ab7624e41061ddc7c

What was observed

{
  "count": 1,
  "tools": [
    {
      "description": "Build a consistent prompt set for one human character: a canonical image prompt with every appearance fact labelled, negative prompts that stop traits like glasses or a cane from vanishing, a video prompt, and optionally a contact sheet that holds everything fixed and walks one axis. Works with any image or video model. Text keeps wardrobe and framing stable; for the same FACE across images, generate the canonical frame once and pass it back as a reference image (has_reference). Paid per call over x402: the first attempt answers HTTP 402 with the price. Invalid arguments are refused before any payment.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "appearance": {
            "additionalProperties": false,
            "description": "The canon. Every prompt carries it verbatim. At least one field, or a trait, is required.",
            "properties": {
              "build": {
                "description": "height, frame, posture",
                "type": "string"
              },
              "distinguishing": {
                "description": "the one detail someone would describe first",
                "type": "string"
              },
              "eyes": {
                "description": "colour, shape, anything unusual",
                "type": "string"
              },
              "face": {
                "description": "features, apparent age, how they hold their expression",
                "type": "string"
              },
              "hair": {
                "description": "colour, length, style",
                "type": "string"
              },
              "held": {
                "description": "bag, phone, cup, tool — what the hands actually hold",
                "type": "string"
              },
              "outfit": {
                "description": "materials, colours, silhouette",
                "type": "string"
              },
              "skin": {
                "description": "tone, texture, freckles, scars, lines",
                "type": "string"
              }
            },
            "type": "object"
          },
          "choices": {
            "additionalProperties": false,
            "description": "The shot. Unset axes use neutral defaults.",
            "properties": {
              "action": {
                "description": "Action. One of: standing, squared, walking, turning, over-shoulder, seated, leaning, arms-crossed, reaching, crouched, speaking, still-profile, sitting-desk, hands-pockets, laughing — or free text of your own.",
                "type": "string"
              },
              "angle": {
                "description": "Camera angle. One of: eye, low, high, three-quarter-turn, profile, none",
                "enum": [
                  "eye",
                  "low",
                  "high",
                  "three-quarter-turn",
                  "profile",
                  "none"
                ],
                "type": "string"
              },
              "environment": {
                "description": "Environment. One of: seamless, neutral, interior, street, landscape, none — or free text of your own.",
                "type": "string"
              },
              "lens": {
                "description": "Lens. One of: 35, 50, 85, 135, none",
                "enum": [
                  "35",
                  "50",
                  "85",
                  "135",
                  "none"
                ],
                "type": "string"
              },
              "lighting": {
                "description": "Lighting. One of: soft-key, rim, golden, overcast, low-key, practical, none",
                "enum": [
                  "soft-key",
                  "rim",
                  "golden",
                  "overcast",
                  "low-key",
                  "practical",
                  "none"
                ],
                "type": "string"
              },
              "seed": {
                "description": "Hold it across a set; a contact sheet is only comparable with the seed fixed.",
                "type": "string"
              },
              "shot": {
                "description": "Shot size. One of: full, three-quarter, medium, close, extreme-close",
                "enum": [
                  "full",
                  "three-quarter",
                  "medium",
                  "close",
                  "extreme-close"
                ],
                "type": "string"
              },
              "style": {
                "description": "Render style. One of: photo, cinematic, illustration, painterly, render3d, anime",
                "enum": [
                  "photo",
                  "cinematic",
                  "illustration",
                  "painterly",
                  "render3d",
                  "anime"
                ],
                "type": "string"
              }
            },
            "type": "object"
          },
          "custom_traits": {
            "items": {
              "additionalProperties": false,
              "description": "A trait not in the list.",
              "properties": {
                "description": {
                  "description": "e.g. Red knit scarf, wrapped twice",
                  "type": "string"
                },
                "name": {
                  "description": "e.g. Scarf",
                  "type": "string"
                }
              },
              "type": "object"
            },
            "maxItems": 6,
            "type": "array"
          },
          "has_reference": {
            "description": "True when a canonical image will be attached; the prompts then defer the face to it.",
            "type": "boolean"
          },
          "name": {
            "description": "What to call the character in the prompt. Optional.",
            "type": "string"
          },
          "traits": {
            "additionalProperties": false,
            "description": "Details models tend to drop. Include a key only if the character has it.",
            "properties": {
              "facial-hair": {
                "description": "style, length, how grey. Adds a negative prompt that stops it disappearing between generations.",
                "type": "string"
              },
              "glasses": {
                "description": "frame shape, colour, thickness, tint. Adds a negative prompt that stops it disappearing between generations.",
                "type": "string"
              },
              "headwear": {
                "description": "what it is, how it sits, how much hair it covers. Adds a negative prompt that stops it disappearing between generations.",
                "type": "string"
              },
              "ink": {
                "description": "where they are, what they show, how visible under clothing. Adds a negative prompt that stops it disappearing between generations.",
                "type": "string"
              },
              "mobility": {
                "description": "wheelchair, cane, crutches, prosthesis — type, material, which side. Adds a negative prompt that stops it disappearing between generations.",
                "type": "string"
              }
            },
            "type": "object"
          },
          "video": {
            "additionalProperties": false,
            "description": "The clip.",
            "properties": {
              "ambient": {
                "description": "Ambient",
                "enum": [
                  "still",
                  "breeze",
                  "dust",
                  "flicker"
                ],
                "type": "string"
              },
              "camera": {
                "description": "Camera move",
                "enum": [
                  "locked",
                  "push-in",
                  "push-out",
                  "orbit"
                ],
                "type": "string"
              },
              "motion": {
                "description": "Motion",
                "enum": [
                  "blink",
                  "breathe",
                  "weight",
                  "turn-to",
                  "look-away",
                  "smile",
                  "step",
                  "speak",
                  "hair"
                ],
                "type": "string"
              }
            },
            "type": "object"
          },
          "walk_axis": {
            "description": "Return a contact sheet: one prompt per option of this axis, everything else held.",
            "enum": [
              "action",
              "shot",
              "angle",
              "lens",
              "lighting",
              "environment",
              "style"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "build_character_prompts"
    }
  ]
}

What the leaf hashes

{"body":"39d3923af2ddd1c78ca67fcc372fdb119369c7ff9eb49741cf2f78c29b609251","id":565431,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793138156971693,"prev":null,"subject":"21b4f792-45e0-4001-905b-f6a8c5ac6f33","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. 0xcd0c595cf86e82ec5378a9ac88c5250abe12ca358801e83f550905f799568658
  2. 0x273f154203f8463510bdefe058d84e26e60cfda9d4df8d44c2f9f5a906472d72
  3. 0xbfbd3981a0148f431db7ace8b250528475b93195c3844f02493e3b400c42a581
  4. 0x438f6f21efc0229e4ea118419c428dce792fa041f327782da602c708b4b4b64f
  5. 0xf58657886255594231675e878efce546e3e80258264ac7826295dd8a40108501
  6. 0x3d9aab6f31e2f4f279977fa261dd4044299c65b8edd26e7d1557baad8f36b613
  7. 0x6d288696d985dc86371d474c2fda64fb85c121919b9e1d993c4981b345cdae3f
  8. 0x0877eca85d2882180b41453b5721d62e63d956a197eb58e521a0bc790e5c9c4c
  9. 0x1ca8f16d15a32037141b41350f45e89e3f2e67002547320aaced65fd644ab9b0
  10. 0xb8405eeba75c6be56beb524c5fd7accc70de5ceb18b5c0866feaa3130c03653b
  11. 0xf6faea553d6354c2881afaf6cc13a2f3a8290ee9597618bbe3c61a828c5e4c23
  12. 0x6c0803f2d7123e0bcd2a148e9fde0f429f31dc964ced287e760ee656fcd9912f
  13. 0xeb77e9d1884bf470f4a13a5869956a83ac37957112a29ccb9e63ddf7791b5a0b
  14. 0xcc49fd573532e5a29f5be4033f62a2eff71456c020bd2258312b98e95cfe301e
  15. 0x969cd44e5a4e8dc3110540398fbf689659eb51df735c1cda5d8f021ef9ff5683
  16. 0xa94627de1af0e823832e05a9069b304ecccb8c0cdb8f9cfc4f2039bfb9799dc5
  17. 0xdf1105afdc109de3c09a98fc8a3864159ad964e6f49b635c105a27a1e1f14310
  18. 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON