addrbookFor publishers
← The evidence ledger

Evidence row 1833778

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 6ddc73d9-47d6-4364-a706-63d79d19a845
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
b63f077138da5cb7586cdd49c3a8dfc096d99d6673b472d2ddad39901d1d76f2
Leaf
0xc5545c2fc57925f32e5a0604e5bea5b63c164d02dec02cf1c2ae8149400d79bd

What was observed

{
  "count": 45,
  "tools": [
    {
      "description": "Adapts an existing program for a user profile. Use when the user wants to customize a program.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "end_user_age": {
            "maximum": 100,
            "minimum": 16,
            "type": "integer"
          },
          "end_user_fitness_levels": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "end_user_gender": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "max_weeks": {
            "maximum": 52,
            "minimum": 1,
            "type": "integer"
          },
          "min_weeks": {
            "maximum": 52,
            "minimum": 1,
            "type": "integer"
          },
          "plan_id": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "user_requirements": {
            "maxLength": 2000,
            "type": "string"
          },
          "workouts_per_week": {
            "maximum": 7,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "plan_id"
        ],
        "type": "object"
      },
      "name": "adapt_plan"
    },
    {
      "description": "Adapts an existing workout for a user profile. Use when the user wants to customize a workout (duration, difficulty, equipment) without generating from scratch.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "duration_max": {
            "maximum": 90,
            "minimum": 10,
            "type": "integer"
          },
          "duration_min": {
            "maximum": 90,
            "minimum": 10,
            "type": "integer"
          },
          "end_user_age": {
            "maximum": 100,
            "minimum": 16,
            "type": "integer"
          },
          "end_user_fitness_levels": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "end_user_gender": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "user_requirements": {
            "maxLength": 2000,
            "type": "string"
          },
          "workout_id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "workout_id"
        ],
        "type": "object"
      },
      "name": "adapt_workout"
    },
    {
      "description": "Clones stock programs to the user's team. Use when the user wants to add publisher programs to their library.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "program_ids": {
            "items": {
              "type": "string"
            },
            "maxItems": 20,
            "minItems": 1,
            "type": "array"
          }
        },
        "required": [
          "program_ids"
        ],
        "type": "object"
      },
      "name": "clone_stock_programs"
    },
    {
      "description": "Creates a social drop from an exercise, exercise group, workout, or program. Use when the user wants to create social media content from existing content.",
      "inputSchema": {
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "source_id"
            ]
          },
          {
            "properties": {
              "source_ids": {
                "minItems": 1
              }
            },
            "required": [
              "source_ids"
            ]
          }
        ],
        "properties": {
          "locale": {
            "type": "string"
          },
          "source_id": {
            "type": "string"
          },
          "source_ids": {
            "items": {
              "type": "string"
            },
            "maxItems": 7,
            "type": "array"
          },
          "source_type": {
            "enum": [
              "exercise",
              "exerciseCollection",
              "workout",
              "workoutCollection"
            ],
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "source_type"
        ],
        "type": "object"
      },
      "name": "create_drop"
    },
    {
      "description": "Creates an exercise group (circuit or sets). Use when the user wants to group exercises for circuits or micro-workouts. Requires at least 2 exercise IDs.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "exercise_ids": {
            "items": {
              "type": "string"
            },
            "minItems": 2,
            "type": "array"
          },
          "group_type": {
            "enum": [
              "circuit",
              "sets"
            ],
            "type": "string"
          },
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "rest_seconds": {
            "minimum": 0,
            "type": "integer"
          },
          "rounds": {
            "minimum": 1,
            "type": "integer"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "exercise_ids"
        ],
        "type": "object"
      },
      "name": "create_exercise_group"
    },
    {
      "description": "Creates an exercise instance with duration/reps, pace, weight, RPE. Use when building a workout manually - create instances for each exercise, then pass instance IDs to create_workout. Stock and team exercises can be used directly via exercise_id.",
      "inputSchema": {
        "additionalProperties": false,
        "else": {
          "required": [
            "reps"
          ]
        },
        "if": {
          "properties": {
            "time_based": {
              "const": true
            }
          },
          "required": [
            "time_based"
          ]
        },
        "properties": {
          "amrap": {
            "type": "boolean"
          },
          "duration_seconds": {
            "minimum": 1,
            "type": "integer"
          },
          "exercise_id": {
            "minLength": 1,
            "type": "string"
          },
          "pace": {
            "enum": [
              "slow",
              "normal",
              "fast"
            ],
            "type": "string"
          },
          "reps": {
            "minimum": 1,
            "type": "integer"
          },
          "rpe": {
            "maximum": 10,
            "minimum": 0,
            "type": "integer"
          },
          "skip_intro": {
            "type": "boolean"
          },
          "team_id": {
            "type": "string"
          },
          "time_based": {
            "type": "boolean"
          },
          "weight_level": {
            "enum": [
              "light",
              "medium",
              "heavy"
            ],
            "type": "string"
          }
        },
        "required": [
          "exercise_id",
          "time_based"
        ],
        "then": {
          "required": [
            "duration_seconds"
          ]
        },
        "type": "object"
      },
      "name": "create_exercise_instance"
    },
    {
      "description": "Creates a workout program from team workouts. Use when the user wants to organize workouts into a multi-week program. Requires goal_ids (1-2) and workout_ids (min 2).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": "string"
          },
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "duration_in_weeks": {
            "maximum": 52,
            "minimum": 1,
            "type": "integer"
          },
          "goal_ids": {
            "items": {
              "type": "string"
            },
            "maxItems": 2,
            "minItems": 1,
            "type": "array"
          },
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "visibility": {
            "enum": [
              "public",
              "private"
            ],
            "type": "string"
          },
          "workout_ids": {
            "items": {
              "type": "string"
            },
            "minItems": 2,
            "type": "array"
          },
          "workouts_per_week": {
            "maximum": 7,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "name": "create_program"
    },
    {
      "description": "Creates a rest/break instance for use between exercises in a workout. Use when building a workout manually - create rest instances, then include their IDs in create_workout exercise_map. Workout cannot start or end with rest.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "duration_seconds": {
            "minimum": 1,
            "type": "integer"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "duration_seconds"
        ],
        "type": "object"
      },
      "name": "create_rest_instance"
    },
    {
      "description": "Creates a workout from exercise and rest instances. Use when the user wants to build a custom workout. Provide either exercise_map (ordered array of instance IDs from create_exercise_instance and create_rest_instance) or instances (raw instance objects). Workout cannot start or end with rest.",
      "inputSchema": {
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "exercise_map"
            ]
          },
          {
            "required": [
              "instances"
            ]
          }
        ],
        "properties": {
          "category_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "type": "string"
          },
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "exercise_map": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "instance_id": {
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "instance_id"
              ],
              "type": "object"
            },
            "minItems": 1,
            "type": "array"
          },
          "instances": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": "array"
          },
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "visibility": {
            "enum": [
              "public",
              "private"
            ],
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "name": "create_workout"
    },
    {
      "description": "Exports drop assets for a channel (video URL, cover URL, copy pack). Use when the user wants to download assets or prepare a drop for external publishing.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "aspect_ratio": {
            "enum": [
              "9:16",
              "1:1",
              "16:9"
            ],
            "type": "string"
          },
          "channel_preset": {
            "type": "string"
          },
          "drop_id": {
            "minLength": 1,
            "type": "string"
          },
          "duration": {
            "maximum": 60,
            "minimum": 15,
            "type": "integer"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "drop_id"
        ],
        "type": "object"
      },
      "name": "export_drop"
    },
    {
      "description": "Generates an AI training program using team workouts. Use when the user wants to create a multi-week program from their workout library.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "end_user_age": {
            "maximum": 100,
            "minimum": 16,
            "type": "integer"
          },
          "end_user_fitness_levels": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "end_user_gender": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "end_user_goal_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "end_user_training_days_per_week": {
            "maximum": 7,
            "minimum": 1,
            "type": "integer"
          },
          "goal_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "locale": {
            "type": "string"
          },
          "max_weeks": {
            "maximum": 24,
            "minimum": 1,
            "type": "integer"
          },
          "min_weeks": {
            "maximum": 24,
            "minimum": 1,
            "type": "integer"
          },
          "team_id": {
            "type": "string"
          },
          "user_requirements": {
            "maxLength": 2000,
            "type": "string"
          },
          "workouts_per_week": {
            "maximum": 7,
            "minimum": 1,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "generate_program"
    },
    {
      "description": "Generates an AI exercise video from a trainer photo (CloneMotion). Use when the user wants to create exercise videos without filming. Before calling, ensure you have the target exercise and image source (upload URL or saved trainer image ID); optionally ask for specific video requirements. Accepts trainer_image_url (HTTP URL or data:image/... base64) or trainer_image_id from Workout Defaults.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "equipment": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exercise_description": {
            "type": "string"
          },
          "exercise_id": {
            "minLength": 1,
            "type": "string"
          },
          "exercise_type": {
            "type": "string"
          },
          "target_muscles": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "team_id": {
            "type": "string"
          },
          "trainer_image_id": {
            "type": "string"
          },
          "trainer_image_url": {
            "pattern": "^(https?:\\/\\/|data:image\\/).+",
            "type": "string"
          },
          "user_requirements": {
            "maxLength": 2000,
            "type": "string"
          }
        },
        "required": [
          "exercise_id"
        ],
        "type": "object"
      },
      "name": "generate_video_clip"
    },
    {
      "description": "Generates an AI workout via Content API. Use when the user wants to create a personalized workout on-the-fly. Returns workout structure (not persisted to team library by default).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "category_id": {
            "minLength": 1,
            "type": "string"
          },
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "duration_max": {
            "maximum": 90,
            "minimum": 10,
            "type": "integer"
          },
          "duration_min": {
            "maximum": 90,
            "minimum": 10,
            "type": "integer"
          },
          "end_user_age": {
            "maximum": 100,
            "minimum": 16,
            "type": "integer"
          },
          "end_user_fitness_levels": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "end_user_gender": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "end_user_goal_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exercise_sources": {
            "items": {
              "enum": [
                "premium_stock",
                "free_stock",
                "team_exercises"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "locale": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "user_requirements": {
            "maxLength": 2000,
            "type": "string"
          }
        },
        "required": [
          "category_id"
        ],
        "type": "object"
      },
      "name": "generate_workout"
    },
    {
      "description": "Returns API key usage statistics for the current user's team. Use when the user asks about API usage, request counts, or rate limits.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "end_date": {
            "type": "string"
          },
          "granularity": {
            "enum": [
              "hourly",
              "daily"
            ],
            "type": "string"
          },
          "start_date": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_api_usage_stats"
    },
    {
      "description": "Returns dashboard summary: latest created workouts with stats and ready-to-download items. Use when the user asks about dashboard, recent workouts, or content ready for download.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "days_back": {
            "maximum": 365,
            "minimum": 1,
            "type": "integer"
          },
          "include_ai_clips": {
            "type": "boolean"
          },
          "include_workouts": {
            "type": "boolean"
          },
          "include_youtube_stats": {
            "type": "boolean"
          },
          "limit": {
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "get_dashboard_summary"
    },
    {
      "description": "Returns static copy-paste code templates for workout embeds (keyHandshake iframe), program page embeds, custom player JavaScript, or Content API cURL snippets. All samples contain only placeholder values (YOUR_ORG_ID, YOUR_API_KEY) — no real credentials are fetched or transmitted. Defaults sample_type to embed_prebuilt when omitted. Primary tool when the user asks for embed code, iframe HTML, or API snippet examples. Not for integration strategy or step-by-step plans (use get_integration_plan).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "browse_tool": {
            "enum": [
              "list_team_workouts",
              "list_sample_workouts",
              "list_team_programs",
              "list_team_exercises",
              "list_team_drops"
            ],
            "type": "string"
          },
          "program_id": {
            "type": "string"
          },
          "sample_type": {
            "default": "embed_prebuilt",
            "enum": [
              "embed_prebuilt",
              "embed_ai_generated",
              "custom_progress",
              "custom_navigation",
              "custom_integration_flow",
              "content_api_list_plans",
              "content_api_list_workouts",
              "content_api_list_groups",
              "embed_program_page",
              "content_api_plan_workouts"
            ],
            "type": "string"
          },
          "workout_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_embed_code_samples"
    },
    {
      "description": "Returns an integration strategy and step-by-step plan for Hyperhuman workouts or programs: embed (iframe), stream videos (VOD export), or custom player (API + playlist). Use when the user asks how to integrate Hyperhuman or what integration options exist. Pass platform (web/mobile/hardware/cms) and use_case (mvp, programs, ai_generated, corporate_wellness, vod, etc.). Not for copy-paste embed HTML snippets (use get_embed_code_samples for those).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "platform": {
            "default": "web",
            "enum": [
              "web",
              "mobile",
              "hardware",
              "cms"
            ],
            "type": "string"
          },
          "use_case": {
            "default": "mvp",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_integration_plan"
    },
    {
      "description": "Returns team name, plan label, and usage limits for the connected account. Use only when the user explicitly asks about their team, plan, or usage quotas.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_session_summary"
    },
    {
      "description": "Returns full details of an exercise from the team library. Use when the user selects an exercise or asks for exercise details.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "exercise_id": {
            "minLength": 1,
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "exercise_id"
        ],
        "type": "object"
      },
      "name": "get_team_exercise"
    },
    {
      "description": "Returns full details of a workout program from the team. Use when the user selects a program or asks for program structure.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          },
          "program_id": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "program_id"
        ],
        "type": "object"
      },
      "name": "get_team_program"
    },
    {
      "description": "Returns usage quotas for the authenticated team (e.g. social drop export count and limits). Use when the user asks about usage, quotas, or limits.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_team_usage"
    },
    {
      "description": "Returns full details of a workout from the team. Use when the user selects a workout or asks for details about a specific workout.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "workout_id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "workout_id"
        ],
        "type": "object"
      },
      "name": "get_team_workout"
    },
    {
      "description": "Returns status and result of a CloneMotion video generation job. Use when the user wants to check if a generated video is ready or view the generated variants. Generation can take a few minutes; if status is pending or running, ask the user to check again after waiting.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "job_id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "job_id"
        ],
        "type": "object"
      },
      "name": "get_video_generation_status"
    },
    {
      "description": "Returns workout metadata, preview assets, and summary. Use when the user selects a workout or asks for details about a specific workout. sample-* ids return a curated sample detail (no auth). Connected team workout ids use the Internal API (same data as get_team_workout). Other org ids use the Content API when the team has API entitlement.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          },
          "workout_id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "workout_id"
        ],
        "type": "object"
      },
      "name": "get_workout_details"
    },
    {
      "description": "Returns playlist segments with timing and media pointers (progressive MP4/M4A URLs, typically ~7 days). sample-* ids return a curated sample playlist (no auth, no live media URLs). Connected org ids use the Content API when the team has API entitlement. Use when the user wants to see the segment structure or how to play a workout.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "browse_tool": {
            "enum": [
              "list_team_workouts",
              "list_sample_workouts",
              "list_team_programs",
              "list_team_exercises",
              "list_team_drops"
            ],
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "workout_id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "workout_id"
        ],
        "type": "object"
      },
      "name": "get_workout_playlist"
    },
    {
      "description": "Returns MCP server readiness status with a fixed ready message. Use when the user asks if the Hyperhuman app is working, reachable, or connected.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "health_check"
    },
    {
      "description": "Returns equipment for exercises. Use when updating exercise metadata or filtering exercises.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "category_id": {
            "type": "string"
          },
          "locale": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_equipment"
    },
    {
      "description": "Returns muscle groups for exercises. Use when updating exercise metadata or filtering exercises.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_muscle_groups"
    },
    {
      "description": "Returns a workout carousel for sample-workout prompts. When the user is connected via OAuth, lists up to 8 team workouts through the Internal API (Bearer token only — no Content API key required). When not connected, returns up to 6 curated guest samples with embedDemoUrl. Use when the user asks for sample workouts, a workout carousel, or embed demo preview. Not for full team-library admin views (use list_team_workouts), integration plans (use get_integration_plan), or copy-paste embed HTML (use get_embed_code_samples).",
      "inputSchema": {
        "additionalProperties": false,
        "description": "Filters for sample workouts. If both duration_min and duration_max are set, duration_min must be <= duration_max.",
        "properties": {
          "category_id": {
            "type": "string"
          },
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "duration_max": {
            "maximum": 120,
            "minimum": 5,
            "type": "integer"
          },
          "duration_min": {
            "maximum": 120,
            "minimum": 5,
            "type": "integer"
          },
          "locale": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_sample_workouts"
    },
    {
      "description": "Returns platform stock programs (publisher programs). Use when the user wants to browse or clone stock programs.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "difficulties": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "duration_in_weeks": {
            "type": "integer"
          },
          "goal_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "locale": {
            "type": "string"
          },
          "page": {
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "search_text": {
            "type": "string"
          },
          "sort_by": {
            "enum": [
              "name",
              "createdAt",
              "updatedAt",
              "durationInWeeks",
              "workoutsPerWeek",
              "difficulty"
            ],
            "type": "string"
          },
          "sort_order": {
            "enum": [
              "ascend",
              "descend"
            ],
            "type": "string"
          },
          "workouts_per_week": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "list_stock_programs"
    },
    {
      "description": "Returns social drops (videos, covers, copy) for the team. Use when the user asks about drops, social assets, or ready-to-download content.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "page": {
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "sort_by": {
            "enum": [
              "updatedAt",
              "createdAt",
              "status"
            ],
            "type": "string"
          },
          "sort_order": {
            "enum": [
              "ascend",
              "descend"
            ],
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_team_drops"
    },
    {
      "description": "Returns exercises from the team library. Use when the user wants to browse exercises, find exercises for workouts, or manage the library.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "availability": {
            "enum": [
              "all",
              "team",
              "free-stock",
              "premium-stock",
              "all-stock"
            ],
            "type": "string"
          },
          "categories": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "coach": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "collection_names": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "equipment_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "locale": {
            "type": "string"
          },
          "muscle_group_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "page": {
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "search_text": {
            "type": "string"
          },
          "skill_level": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_team_exercises"
    },
    {
      "description": "Returns fitness goals available for programs. Use when creating or generating programs to get valid goal IDs.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_team_goals"
    },
    {
      "description": "Returns workout programs (collections) for the authenticated user's team. Use when the user asks to see programs, training plans, or workout collections.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          },
          "page": {
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "search_text": {
            "type": "string"
          },
          "sort_by": {
            "enum": [
              "name",
              "updatedAt",
              "durationInWeeks",
              "workoutsPerWeek",
              "difficulty"
            ],
            "type": "string"
          },
          "sort_order": {
            "enum": [
              "ascend",
              "descend"
            ],
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_team_programs"
    },
    {
      "description": "Returns workouts for the authenticated user's team via Internal API. Use when the user asks to see my team's workouts, my team workouts, or their organization workout library. Requires OAuth. Not for curated sample workouts or guest embed demo (use list_sample_workouts).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          },
          "page": {
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "search_text": {
            "type": "string"
          },
          "sort_by": {
            "enum": [
              "duration",
              "updatedAt",
              "name",
              "difficulty",
              "visibility"
            ],
            "type": "string"
          },
          "sort_order": {
            "enum": [
              "ascend",
              "descend"
            ],
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_team_workouts"
    },
    {
      "description": "Returns workout categories for workouts. Use when creating or updating workouts to get valid category_ids.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "locale": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_workout_categories"
    },
    {
      "description": "Returns ranked program recommendations from the organization library (up to 12 programs in the tool response; optional limit up to 20 is sent to the API). Use when the user wants instant program suggestions.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "end_user_age": {
            "maximum": 100,
            "minimum": 16,
            "type": "integer"
          },
          "end_user_fitness_levels": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "end_user_gender": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "end_user_goal_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "limit": {
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          },
          "locale": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "recommend_plans"
    },
    {
      "description": "Returns ranked workout recommendations from the organization library (up to 12 workouts in the tool response; optional limit up to 20 is sent to the API). Use when the user wants instant suggestions based on profile (faster than generate).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "end_user_age": {
            "maximum": 100,
            "minimum": 16,
            "type": "integer"
          },
          "end_user_fitness_levels": {
            "items": {
              "enum": [
                "beginner",
                "intermediate",
                "advanced"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "end_user_gender": {
            "enum": [
              "male",
              "female"
            ],
            "type": "string"
          },
          "end_user_goal_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "limit": {
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          },
          "locale": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "recommend_workouts"
    },
    {
      "description": "Regenerates AI copy pack (hook, caption, hashtags, CTA) for a drop. Use when the user wants to refresh or improve the social copy.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "channel_preset": {
            "type": "string"
          },
          "drop_id": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "drop_id"
        ],
        "type": "object"
      },
      "name": "regenerate_drop_copy"
    },
    {
      "description": "Regenerates AI cover image for a drop. Use when the user wants a new cover for the social asset.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "aspect_ratio": {
            "enum": [
              "9:16",
              "1:1",
              "16:9"
            ],
            "type": "string"
          },
          "channel_preset": {
            "type": "string"
          },
          "drop_id": {
            "minLength": 1,
            "type": "string"
          },
          "duration": {
            "maximum": 60,
            "minimum": 15,
            "type": "integer"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "drop_id"
        ],
        "type": "object"
      },
      "name": "regenerate_drop_cover"
    },
    {
      "description": "Updates a drop title or channel preset. Use when the user wants to change drop display title or default export channel. For copy changes use regenerate_drop_copy.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "channel_preset": {
            "type": "string"
          },
          "drop_id": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "drop_id"
        ],
        "type": "object"
      },
      "name": "update_drop"
    },
    {
      "description": "Updates an exercise group. Use when the user wants to change name, exercises, rounds, or rest time.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "exercise_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "group_id": {
            "minLength": 1,
            "type": "string"
          },
          "group_type": {
            "enum": [
              "circuit",
              "sets"
            ],
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "rest_seconds": {
            "minimum": 0,
            "type": "integer"
          },
          "rounds": {
            "minimum": 1,
            "type": "integer"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "group_id"
        ],
        "type": "object"
      },
      "name": "update_exercise_group"
    },
    {
      "description": "Updates exercise metadata (name, muscle groups, categories, equipment, skill level). Use when the user wants to fix or improve exercise tagging. Only team-owned exercises can be updated; stock exercises are read-only. Provide at least one field to update besides exercise_id.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "category_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "equipment_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exercise_id": {
            "minLength": 1,
            "type": "string"
          },
          "muscle_group_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "skill_level": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "team_id": {
            "type": "string"
          }
        },
        "required": [
          "exercise_id"
        ],
        "type": "object"
      },
      "name": "update_exercise_metadata"
    },
    {
      "description": "Updates an existing program. Use when the user wants to set duration, workouts per week, or edit program metadata. When updating, provide full program data (goal_ids, workout_ids, visibility, difficulty) from get_team_program and merge your changes.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": "string"
          },
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "duration_in_weeks": {
            "maximum": 52,
            "minimum": 1,
            "type": "integer"
          },
          "goal_ids": {
            "items": {
              "type": "string"
            },
            "maxItems": 2,
            "minItems": 1,
            "type": "array"
          },
          "name": {
            "type": "string"
          },
          "program_id": {
            "minLength": 1,
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "visibility": {
            "enum": [
              "public",
              "private"
            ],
            "type": "string"
          },
          "workout_ids": {
            "items": {
              "type": "string"
            },
            "minItems": 2,
            "type": "array"
          },
          "workouts_per_week": {
            "maximum": 7,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "program_id"
        ],
        "type": "object"
      },
      "name": "update_program"
    },
    {
      "description": "Updates an existing workout. Use when the user wants to change workout name, description, difficulty, visibility, or exercise structure. When only partial fields are provided (e.g. name), the current workout data is fetched and merged automatically.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "category_ids": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "type": "string"
          },
          "difficulty": {
            "enum": [
              "beginner",
              "intermediate",
              "advanced"
            ],
            "type": "string"
          },
          "instances": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": "array"
          },
          "name": {
            "type": "string"
          },
          "team_id": {
            "type": "string"
          },
          "visibility": {
            "enum": [
              "public",
              "private"
            ],
            "type": "string"
          },
          "workout_id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "workout_id"
        ],
        "type": "object"
      },
      "name": "update_workout"
    }
  ]
}

What the leaf hashes

{"body":"b63f077138da5cb7586cdd49c3a8dfc096d99d6673b472d2ddad39901d1d76f2","id":1833778,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793570309197671,"prev":null,"subject":"6ddc73d9-47d6-4364-a706-63d79d19a845","subject_kind":"endpoint"}

Proof

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

  1. 0xc554c28b6132fffb056d4bc009e1fd65b2494bd54102cdac9907215e5059e5b1
  2. 0xf79f8192844ea2290768b0c0e7c12be3eca72c6e4e37d242a9b58e4c6aac1430
  3. 0x1235fadcd1848dafd94866595ad81553b99eea48f0b385116c5a759948f2a9cf
  4. 0x670402e9052bdde6fd71dec25478702502a411edf72b00e2dd8ea0e71103b226
  5. 0x7a897355035776e84ddec26b6cc4515e6bdf4b7fcc3646f04cfa2e58b2cbf0ed
  6. 0x7eefb866f1ccff8e4307c27a5e05c16e3fa36dc3a374ad7718473f0491a45094
  7. 0x407bf3ce43df249f1a909b92683523d71fa17519592366e3031754167e1b33b7
  8. 0x6470c9e12c06f81b46a3fceb913234f172c7e9ba324d6f60c8445808b78fa960
  9. 0x6fcc493311f61f0b05e4a8ead98c548e778f5e010a99aca76bda8754b8d38784
  10. 0x293d4050421c36d08f65074ea89b5d8ac7fe695836de649278b28f8aaa1726f2
  11. 0x87fef6e469545c8647b240dfafe1858a973fa71fb793e84d38cdfb2ad4ec2fd6
  12. 0xd5ca92b6f641bfd600c48f81eea331e7e66b80f69968a36fa6367c54c06aee80
  13. 0xefa31efdf607e8d04b8c9fc919db78fe5a26a3ddbd6b0e7563c8ca73dc801298
  14. 0x5da52d6bfc8f88d79ebced4b6bebec468f5c2d8a21c193d44e901c7a6ce7941e
  15. 0x537331ef190eaefb4419f2a4558b952aaf9435d759df0b0c118b7df609ec1687
  16. 0xfc183bee85dc11a067fb710c6eb88824b94a516ddbdf2717b839e672a2206a7e
  17. 0xb5916fb7a3e87dc0702e46eeadcd22652e2e1e755f8d429cc7a14a67a350b51b
  18. 0x6142ac48fda269c17791c79da99c2456ac6acfe98268f4d168a404fd6040c703
  19. 0x3315fd2757fdd435852cc277377234a3f3909a6d2a089d0e36f6d59aacfda910
Day root
0x7fa2cba1cf3d6b35630896f5fe1a650adb307ea2c376e80a5f2d9276b7cb5ab3
Chained
0x577ff89ba012beeff3197bcff7fa86752074bdf54205a24359cc437be2a952a4
Published
On Arc Testnet, block 70262758: 0x435bc1b9331471d72e1998f2e420983b5189d4da65ffbd6f27ef40daf5e1ea90

How to check it · This row as JSON