SetSage for AI agents

SetSage is a workout tracker for Android phones and Wear OS watches, built so AI agents can coach from real data. Your agent reads the user's training and proposes changes. The user approves them in the app (or lets them apply automatically) and can undo any change.

Two ways in

Live connector (MCP, Streamable HTTP). A SetSage Pro user opens You → Your AI coach → Live AI connection, taps Create my connector link, and adds that private URL to their agent:

The token in the URL identifies the user, so treat it as a password. The user can replace or turn off the link at any time.

Chat share (any AI, free). The app sends a Markdown summary of the user's training with their request to the Claude, ChatGPT or Gemini app. Answer in plain language, then end with one ```json block in the actions envelope below. The user shares your reply back to SetSage to review it.

Tools

ToolWhat it returns or does
get_overview readStart here. Shared profile, active plan with last performance per exercise, the next 14 workouts, this week and 8 weeks, training mix, sets per muscle, personal bests, recent workouts and earlier coach notes.
get_schedule readUpcoming workouts by date, the training weekdays, and the plan's days.
get_workouts readLogged workouts, newest first. Filter by since, until, exercise or limit. Each has minutes, heart rate and load (if shared) and every set.
get_exercise_history readEvery session of one exercise, with its sets and how it felt.
get_progress readWeekly totals, mix, muscle balance, 12-week consistency, records and lifetime totals.
get_plans readAll saved plans and which one is active.
search_exercises readThe 256-entry library plus the user's own exercises. Filter by name, kind, muscle or equipment.
propose_changes writeA summary plus a list of actions (below), sent to the user's app.
add_coach_note writeA review or tip saved in the app (Progress and Your AI coach).
log_workout writeA workout the user told you about that the watch missed, from the last 60 days.
get_proposal_status readWhether recent proposals were applied or declined, and what changed.

The actions envelope

The same format works for connector writes and chat replies. Use only the actions you need.

{"setsage":1,"summary":"one line on what you changed and why","actions":[
  {"type":"set_target","exercise":"Bench press","day":"Push A","sets":3,"reps":8,"weight_kg":62.5,"rest_sec":120},
  {"type":"swap_exercise","day":"Legs","from":"Back squat","to":"Goblet squat"},
  {"type":"add_exercise","day":"Legs","exercise":"Calf raise","sets":3,"reps":12,"weight_kg":40},
  {"type":"remove_exercise","day":"Legs","exercise":"Leg extension"},
  {"type":"schedule","training_days":["Mon","Wed","Fri"],"next_day":"Legs"},
  {"type":"new_plan","make_active":true,"plan":{"name":"Plan name","days":[{"name":"Day A","exercises":[
     {"exercise":"Back squat","sets":3,"reps":5,"weight_kg":80,"rest_sec":180},{"exercise":"Plank","sets":3,"seconds":45}]}]}},
  {"type":"log_workout","date":"2026-09-27","name":"Spin class","minutes":45,"exercises":[{"exercise":"Indoor cycling","sets":[{"seconds":2700}]}]},
  {"type":"note","title":"Week review","text":"What you noticed and what to focus on"}
]}

update_plan takes a plan like new_plan and rewrites the active plan in place. Days can be named ("Push A") or numbered ("Day 2"). Exercise names are matched to the library, and unknown names become the user's own exercises.

Units and rules

Privacy

The phone builds everything an agent can read from the user's sharing switches. Plans and schedule are always included. Workouts, heart rate, body details and notes are optional. Names and email addresses are never included. See the privacy policy.

← SetSage home · SetSage is made by Check Zanas Limited (Scotland, SC874025). Developers: hello.setsage@gmail.com.