An MCP server for DingTalk integration that provides tools for order extraction, jokes, time retrieval, and fortune drawing
Critical gaps across all dimensions. Tool names lack action verbs (list_tools, tell_joke, fortune are generic). Descriptions are minimal (10-50 chars) and lack context for LLM selection. No input schemas visible for any tool, parameters inferred from function signatures only. No output schemas documented. The one substantive tool (extra_order_from_content) has a Chinese description that LLMs may struggle with. No error handling guidance, no parameter validation hints, no security considerations. This server reads as a proof-of-concept, not production-ready.
提取文字中的订单信息,包括订单号、商品名称、数量等,以json格式返回
Draw a random fortune
Get the current time
List all available tools and their descriptions
Tell a random joke
No input schemas visible in source code. All tools lack explicit JSON Schema definitions with type and description for parameters. Schemas appear to be inferred from Python function signatures only, making them inaccessible to static analysis and LLM planning.
Tool names lack action verbs. 'tell_joke', 'fortune', 'list_tools' are generic and do not clearly signal intent. LLMs cannot disambiguate purpose from names alone. Should be 'generate_joke', 'draw_fortune', 'list_available_tools'.
Descriptions are minimal (10-50 chars) and lack context. 'Tell a random joke' and 'Draw a random fortune' do not explain WHEN to use these tools or what they return. No guidance on output format or downstream usage.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 27 | <=2025-11-25 | v2 |
extra_order_from_content description is in Chinese ('提取文字中的订单信息...'), which LLMs trained primarily on English may misinterpret or fail to parse correctly. Descriptions should be in the primary language of the LLM client.
No output schemas documented. Tools return strings, but LLMs cannot infer structure (e.g., is extra_order_from_content returning JSON, plain text, or markdown?). No guidance on parsing or downstream tool chaining.