addrbookFor publishers
← The evidence ledger

Evidence row 730281

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 3fb7c502-ed61-4012-93f2-023b46ffa40e
Recorded
Previous row
#297637
Body SHA-256
044b6d34319dcdab3212e68bf6922d8b88b7c3e6ff48554ba0548c233189fb28
Leaf
0x850dd921d3a945256c79663d3c1a2d37741775ac97b568ae81dc5f42707c2b90

What was observed

{
  "count": 11,
  "tools": [
    {
      "description": "Use this when someone asks what PocketCaddie is, how it works, what it measures, which phones and watches it supports, what it costs, or whether an iPhone or Apple Watch can track a golf swing without video. Returns PocketCaddie's own description of itself.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "about_pocketcaddie"
    },
    {
      "description": "Use this when a linked golfer asks what their coach assigned: the active PocketCaddie Coach plans, their drills and targets, and progress on each.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "coach_plan"
    },
    {
      "description": "Use this when a golfer describes what the ball does or how they hit it, without naming the swing fault: e.g. 'my ball starts left and curves right', 'everything goes right', 'I keep hitting behind the ball', 'I top it', 'I shanked three in a row', 'my shots are weak and short'. Map their words to start direction, curve and contact (leave out what they didn't say). Returns the likely faults from a fixed ball-flight table and the PocketCaddie drills for each, as cards.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "contact": {
            "description": "fat = ground first, thin = topped or bladed, shank = off the hosel, weak = short with no compression.",
            "enum": [
              "clean",
              "fat",
              "thin",
              "shank",
              "weak"
            ],
            "type": "string"
          },
          "curve": {
            "description": "Which way it curves in the air.",
            "enum": [
              "left",
              "none",
              "right"
            ],
            "type": "string"
          },
          "left_handed": {
            "default": false,
            "type": "boolean"
          },
          "start": {
            "description": "Where the ball starts, from the golfer's view.",
            "enum": [
              "left",
              "straight",
              "right"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "diagnose_ball_flight"
    },
    {
      "description": "Use this when the golfer wants the full instructions for one drill: steps, the cue to remember, reps, equipment and why it works. Takes a drill id from search_drills, diagnose_ball_flight or practice_plan.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "get_drill"
    },
    {
      "description": "Use this when a linked golfer asks about their goals, what they're working on, their focus, or how a block of practice went: the active focus goal (the reading, its zone, who set it, the block so far and the before), the long-term goal, goals waiting in the app, and recent goals with the app's outcome (Improved, Held, Not yet, Mastered). Counts are focus swings in the zone out of focus swings with a read. Only call a change real when the outcome says so.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "recent": {
            "default": 5,
            "description": "How many finished goals to include.",
            "maximum": 10,
            "minimum": 1,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "goals"
    },
    {
      "description": "Use this when a golfer asks for a practice plan, a range routine or a session to do at home, e.g. 'build me a 30-minute range plan', 'what should I do with a bucket of balls', 'home practice for tempo'. Builds a timed plan from PocketCaddie drills for 1–3 skills (map their goal to the closest skills). If the golfer has linked their account, call progress first and pass their lowest-scoring skills.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "minutes": {
            "default": 30,
            "maximum": 90,
            "minimum": 10,
            "type": "integer"
          },
          "skills": {
            "items": {
              "type": "string"
            },
            "maxItems": 3,
            "minItems": 1,
            "type": "array"
          },
          "where": {
            "default": "range",
            "enum": [
              "range",
              "home",
              "any"
            ],
            "type": "string"
          }
        },
        "required": [
          "skills"
        ],
        "type": "object"
      },
      "name": "practice_plan"
    },
    {
      "description": "Show how the golfer's swing has changed across sessions: Swing Score and skill scores per session (where synced), the focus score of each focus session, and the first-vs-latest medians of each measurement. Use it to find their weakest skills before practice_plan; use goals for how a focus goal is going.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "days": {
            "default": 90,
            "maximum": 365,
            "minimum": 7,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "progress"
    },
    {
      "description": "List the golfer's most recent PocketCaddie range sessions: date, swings, minutes, sensors used and Swing Score (0–100, needs 15+ swings).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "limit": {
            "default": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "recent_sessions"
    },
    {
      "description": "Use this when a linked golfer asks about their golf rounds or handicap: recent Live Rounds (course, holes, strokes, to par, putts) and the handicap the PocketCaddie app tracks.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "limit": {
            "default": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "rounds"
    },
    {
      "description": "Use this when a golfer asks how to fix a swing fault, asks for golf drills, or wants something to work on at the driving range or at home. Covers: slice, hook, shanks, hitting it fat or thin, topping, over the top, casting, early release, flipping, chicken wing, early extension, standing up, sway, reverse pivot, hanging back, all arms, rushed tempo, decelerating, tension, blocks, weak strike. Examples: 'how do I fix my slice', 'I come over the top', 'why do I hit it fat', 'drills for my driver', 'what should I practice at the range'. Pass the golfer's own words as query. Returns drill cards from the PocketCaddie library (48 drills with steps, a cue and reps). If the golfer describes a ball flight or contact problem without naming a fault ('my ball curves right', 'I keep hitting the ground first'), use diagnose_ball_flight instead. Don't use it for tee times, course info, equipment prices, distances or rules. Skills: Tempo, Smoothness, Power, Consistency, Transition, Follow-through, Backswing Turn, Follow-Through Turn, Wrist Action, Swing Path, Body Turn, Head Stability, Kinetic Sequence, Hand Speed, Shoulder Turn, X-Factor, Posture.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "limit": {
            "default": 5,
            "maximum": 10,
            "minimum": 1,
            "type": "integer"
          },
          "max_minutes": {
            "maximum": 60,
            "minimum": 5,
            "type": "integer"
          },
          "query": {
            "description": "The golfer's problem or goal in their words.",
            "type": "string"
          },
          "skill": {
            "description": "Optional skill name, e.g. Tempo or Backswing Turn.",
            "type": "string"
          },
          "where": {
            "description": "Where they will practice.",
            "enum": [
              "range",
              "home",
              "any"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "search_drills"
    },
    {
      "description": "Break down one range session: Swing Score, its areas and skill scores when the app synced them, plus the median of each swing measurement (tempo, backswing/downswing time, hip turn, posture; shoulder turn, X-Factor and hand speed with Apple Watch; head stability with AirPods). For a focus session, how many focus swings landed in the zone vs before; What your swing shows (patterns) when the app synced them. Defaults to the latest session. Only interpret what is returned; PocketCaddie does not measure ball flight, carry or club head speed.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "session_id": {
            "description": "From recent_sessions. Omit for the latest.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "session_detail"
    }
  ]
}

What the leaf hashes

{"body":"044b6d34319dcdab3212e68bf6922d8b88b7c3e6ff48554ba0548c233189fb28","id":730281,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793153764962852,"prev":297637,"subject":"3fb7c502-ed61-4012-93f2-023b46ffa40e","subject_kind":"endpoint"}

Proof

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

  1. 0x850e5476d29aa13d000c99dce9fa9cee7985b317f8b55e4bc770a005633a737d
  2. 0x7737a133e45a69c96b7c405e720a736b71575d07240b8c2f6290b5854f8389e1
  3. 0x360cc23ea67271cf75ab57d7aabf7fe2c887c8fc532db9070f3ff77631f9a50f
  4. 0x356c72b7ba68a287578a745dccb956818e3704251cf1f16f5803309bc9900981
  5. 0xbcf805d7b80355a58086ef6f0835a132cf367f983b709618cbbccf6a577c33c6
  6. 0x415146c24529362dd46f2197fe35af1beb23ea9cab5e02465e63c7c28f70ebd4
  7. 0x2e78c5bd81e858eb49e652be51f9732246d036c691e5e2d17c5430767588c26b
  8. 0xd9caf639259152c04618d522d2b6892f6bafbba97d758dfbf511ac68f1f01329
  9. 0x1faa64c25ee1ca117d38c81793210eda32485deada2f40adebf0440215bc59f9
  10. 0xa665a94a803d9f0aebe2928405b6eb75b0072867c7421898ec1560404f3ff2a0
  11. 0x5c3b34a1e73a08252a701c038bc07ab0d580c84bc225281a90bdd492bc4c6dfd
  12. 0xa6ea84f68284915680a0a6f73b497fdc8df5e36d5b7ad061d5bc459081876b9c
  13. 0xb072324629a406cd3cdd7c16d50237ad36e849cb87524d54ccd21e2d2c94de51
  14. 0x91b395e5953edc1b4bb2db979b59b2d9a20f0df47d841196dccdb5128537aaaa
  15. 0xe2f9c120d14f36fdddf9b4e605c5d0b8a13b835e2380472255dc22e14b93e84e
  16. 0x74cf00e07b52415c2184cf20be69d195ed2725497a6892c2f3e449497c17d0ec
  17. 0x7a743a0a09057bae687051274e1d45bf973bd36a1a4ba16a191b5d29e3bdfa2a
  18. 0xe027395fafb7fc41921c42ca0542524ea22204cbd5908b70b27f3d5fb26f5d0f
Day root
0x2c19037464cc4c493624565f01775d6446fc78eaa118fc6865bfe2bfca9ff78e
Chained
0xd1d7dee8322ceff8f4c8d83aa1fe4a4466825c2af1c97dbde3d35db61234f7be
Published
On Arc Testnet, block 69584042: 0x8bae2b1d097834c8b458513862d70d29ee807e98dc2e863b27250131c15b35ae

How to check it · This row as JSON