Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnly=false, idempotent=false, non-destructive, closed-world), so the description is not carrying the safety burden alone. It adds genuinely new facts beyond the annotations: the return payload (project_id + a one-time project_key), the PII-free constraint, and a security rule about not putting the key in a URL. It does not say what happens to pre-existing projects or whether the intake payload is mutated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.