Two tools with minimal documentation. Both have valid input schemas (empty object for getAllBooks, number parameter for getBookByYear), but descriptions are in Chinese and extremely brief (8-12 chars each). No parameter descriptions provided. No output schema documentation. No error handling guidance. Tool names lack English clarity for LLM parsing.
获取所有的书
根据年份获取对应年份的书
Tool descriptions are non-English and under 20 characters ('获取所有的书' = 8 chars, '根据年份获取对应年份的书' = 12 chars). LLMs cannot reliably parse Chinese descriptions; descriptions must be in English and 10-1024 chars per pattern:tool-description.
No parameter descriptions. getBookByYear accepts 'year' parameter but provides no description of expected format, range, or constraints. LLMs cannot infer that 'year' expects an integer year like 2024 vs epoch milliseconds.
No output schema documented. Tools return List<McpSchema.Content> with TextContent, but LLMs have no specification of what fields to expect in responses. Per pattern:tool, output schema must be documented so agents can plan downstream calls.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | <=2025-11-25 | v2 |
No error handling or recovery guidance. If getBookByYear receives an invalid year (negative, future, non-existent), no error message guides the LLM on what to do next. Per pattern:recovery-guide, errors must tell the agent what to do.
Tool names lack action verbs in English context. 'getAllBooks' and 'getBookByYear' are acceptable verb_noun patterns, but descriptions in Chinese prevent LLM parsing. Per pattern:tool, names must be self-documenting for LLM intent inference.