INDIVIDUAL MCP TOOL
make_workout_links
Create the links for one running workout: page_url (shareable page with watch/FIT and calendar buttons), gen_url (Apple .workout), fit_url (Garmin FIT), plus calendar artifacts when start is given.
LIVE ENDPOINT
https://watchout.run/mcp
Connect to this endpoint to inspect the live schema for make_workout_links and invoke it with your own arguments.
Indexed input schema
{}Risk classification
Potential side effects detected · medium confidence · heuristic, not a guarantee.
- A tool name or description contains a write-action term.
Parent server
CONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.watchout]
url = "https://watchout.run/mcp"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"watchout": {
"type": "http",
"url": "https://watchout.run/mcp"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: watchout
Remote MCP URL: https://watchout.run/mcp
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"watchout": {
"url": "https://watchout.run/mcp"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"watchout": {
"type": "http",
"url": "https://watchout.run/mcp"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "watchout",
"transport": "streamable-http",
"url": "https://watchout.run/mcp"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
Related tools
runner_profile_interview— The one-time 'grill me' setup interview method: mine the runner's Strava history for routes/laps/hills/paces, confirm one decision at a time, and save the resulting profile in YOUR memory (this server stores nothing).make_plan_links— Create a whole training plan (any horizon) in one call: plan_url (page with Add-all-to-Calendar and Send-all-to-Garmin), ics_url (ONE import = whole plan; ics_upsert_url for Google), a per-session manifest, `calendar` (ready-to-write events + a 📋 anchor for hosts with calendar tools — prefer writing those directly), and optionally ONE intervals.icu bulk body.show_plan_progress— Render the runner's plan progress as an at-a-glance card + computed stats.read_workout_link— Decode a pasted WatchOut link (/w, /ics, /gen, /fit, /plan, /plan.ics) back into make_workout_links-shaped fields + uid + revision — the link IS the state, so this recovers any session or plan in a fresh chat (ask the runner to paste it from the calendar event's URL row).whats_new— Server changelog for version awareness.pull_strava_routes— Read the runner's SAVED Strava routes when your own Strava tools can't (most can't — the official connector is activities-only).fetch_strava_handoff— Collect what the runner sent from a WatchOut page (routes, activities, or an applied-confirmation — see pull_strava_routes / get_strava_activities / log_to_strava).now— The server clock — call it FIRST in a fresh conversation (or whenever unsure what day it is) to anchor 'today': your own sense of date drifts.