Identity and permission
Production access requires a Clerk-authenticated connection and a live external-agents grant. Turning Connected AI assistants off blocks every connected client at request time. The current OAuth layer uses Clerk's supported identity scope and does not claim custom training scopes that Clerk does not issue.
Write boundaries
The server injects athlete identity, creates idempotency keys and stamps time. A caller can request a supported action but cannot mint those ownership fields. Completed workout contents remain read-only except for explicit whole-workout deletion from the product's permitted route.
Health stays outside
Apple Health access does not follow from the workout connection. The Health-summary tool is unavailable over MCP because the external grant does not represent a separate Health decision.
Revocation
Revoking Connected AI assistants is checked on future requests and blocks every OAuth client immediately. Disconnecting one client through its own settings invalidates that client's Clerk access.