Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are sparse (readOnlyHint false, destructiveHint false), so the description carries the burden. It discloses the critical non-destructive guarantee ('original is never modified') and the ownership requirement. It does not specify whether a new workout record is immediately persisted or what the return value contains, but with an output schema present, that is somewhat covered. Overall, it adds meaningful behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.