Single tool with adequate schema and description, but moderate gaps in parameter constraints, error handling guidance, and output documentation. The tool name is clear (send_whatsapp), description explains the action and prerequisite format, and input schema has types and descriptions. However, no output schema is documented, error handling returns raw exception messages without recovery guidance, and parameter format constraints are stated in prose rather than as formal constraints (regex, enum). The server follows fastmcp conventions correctly but lacks patterns for idempotency, validation clarity, and structured error recovery.
Sends a WhatsApp message to the specified recipient number using Twilio. The recipient number MUST be in E.164 format, including the 'whatsapp:' prefix (e.g., 'whatsapp:+15551234567').
Output schema not documented. LLMs cannot infer what fields the response contains or plan downstream chaining.
Parameter format constraint (E.164, 'whatsapp:' prefix) stated in prose description only, not as formal regex/pattern or enum. LLMs may pass invalid formats like '+1234567' (missing prefix) or '1234567' (missing +).
Error handling returns raw exception messages ('Failed to send WhatsApp message to X: <exception>') without recovery guidance. LLMs have no actionable next steps when Twilio rate-limits or rejects a number.
Tool performs a write operation (sends message) but returns only a confirmation string. No tool annotation (destructiveHint) declares this as a side-effecting operation, and no idempotency guarantee is stated, agents cannot determine if retrying a failed send risks duplicate messages.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 53 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | - | v1 |