Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations at all, the description still carries the burden of behavioral disclosure. It does earn credit for flagging mutation ('写操作'), which is the single most important trait for an unannotated tool, but it says nothing about idempotency, what happens if the course is not currently starred, permission/auth requirements, or that omitting confirm triggers a dry run (that detail lives only in the schema).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.