Privacy
Last updated 8 August 2026
WatchOut.run has no accounts, no login, no cookies and no analytics. It stores nothing about you. Everything below follows from that, with one narrow, self-destructing exception described under “The routes mailbox”.
What we collect
Nothing. Workouts, calendar events and workout pages are
generated on the fly from the parameters in the URL (or the arguments of an MCP
tool call) and returned in the response. We keep no database and no user
profiles. The MCP server at mcp.watchout.run is stateless — it
holds no memory of you between calls. Standard, ephemeral request logs may be
processed by our host, Cloudflare, to run and protect the service; we do not
build profiles from them.
The routes mailbox
When your assistant asks for your saved Strava routes, the routes page can
send them back automatically instead of you copy-pasting. That hop works
through a one-shot mailbox on our server: your browser encrypts
what you selected (AES-GCM) with a key that travels only in the link's
fragment — the part after #, which browsers never send to any
server — and parks the ciphertext for at most 15 minutes. Your
assistant collects it once, which deletes it; uncollected entries expire on
their own. We cannot read what's in the mailbox (we never see the key), there
is no index of mailboxes, and nothing about it identifies you. Prefer not to
use it? The copy-paste block on the same page does the same job with no server
in the middle.
Your data stays with you
- Runner profile (your routes, paces, preferences) lives in your AI assistant's memory or project, never on our servers.
- intervals.icu API key (Garmin delivery) is stored only in your browser's local storage and sent only to intervals.icu. WatchOut.run never receives it, and a “forget this key” link on every workout page clears it.
- Sessions you tick off on a plan page are a list of session ids in that browser's local storage — never sent anywhere, so the count follows the browser rather than you. “Forget everything on this device” on the Connections page clears it with everything else.
If WatchOut.run goes away
Storing nothing is a promise about your data, and also a dependency you should be able to see: because the workout lives in the link, some of what you have here needs this site to keep answering. The honest breakdown, so nothing about it is a surprise:
- Survives on its own — workouts already added to your
watch,
.workoutand.fitfiles you downloaded, calendar events already imported (title, time and description, including the session's steps), anything sent to intervals.icu or Garmin, and every Strava activity you logged. - Needs this site — opening a
/wor/planlink (the “Open” row on a calendar event), re-downloading a workout file, route maps and GPX, and the routes mailbox.
So a calendar event keeps telling you what the session is even if this site stops answering; the link on it is what would stop working. The code is written to be deployable by anyone for that reason — the service is a single stateless worker with no database to migrate and no secrets to hand over.
Third parties
Some features send data you provide to services you choose to use, under their own privacy terms:
- Cloudflare — hosting and content delivery.
- MET Norway (yr.no) and Open-Meteo — weather forecasts, called with the coordinates you pass to the weather tool.
- intervals.icu — only when you send a workout to Garmin, and only from your browser with your key.
- Google Calendar — only if you click a “Google Calendar” link, which opens Google with the event details in the URL.
Children
WatchOut.run is a general-audience fitness utility and is not directed to children under 13.
Changes & contact
If this policy changes, the date above changes with it. Questions, or a request about data (though we hold none): privacy@watchout.run.