Single tool with minimal definition quality. Tool name 'create_note' follows verb_noun convention (+), but description is extremely terse (18 chars, well below 34-char p10 baseline). Input schema is present with proper JSON Schema structure and required fields, but parameter descriptions are minimal (8-19 chars each, far below 72-char baseline). No output schema documented. No error handling guidance. Tool lacks context about when to use it, what it returns, or recovery paths. Composition is simple (one tool, one action), but lacks the depth expected for production use.
Create a new note
Tool description is 18 characters ('Create a new note'), far below 34-char p10 baseline. Lacks context on when to use, what it returns, or prerequisites. LLMs cannot determine selection criteria.
Parameter descriptions are 8-19 characters each ('Title of the note', 'Text content of the note'), far below 72-char baseline. Do not explain format, constraints, or dependencies. LLMs cannot infer valid input.
No output schema documented. LLMs cannot plan downstream operations or extract relevant fields from the response. Response structure is opaque.
No error handling guidance. Code throws generic errors ('API_URL not set', 'Content is required', 'Unknown tool') with no recovery hints. LLMs cannot self-correct or retry intelligently.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | 2026-07-28+ | v2 |
API_URL is passed via environment variable and request auth, but no validation that it is a valid Feishu webhook URL. No rate limiting, timeout handling, or partial failure recovery documented.