A Model Context Protocol server that provides tools for querying and managing MySQL databases
Three tools with minimal descriptions (all under 20 chars in English, though Chinese originals may be longer). Input schemas present but sparse: list_tables has empty schema ({}), describe-table and read_query have basic string parameters with minimal descriptions. No output schemas documented. No error handling guidance, no parameter constraints (enums, ranges), no idempotency hints. Tool names lack clarity on what data is returned or how to chain results. No security annotations or permission declarations.
描述指定表的结构
列出数据库中的所有表
执行SQL查询并返回结果
All tool descriptions are under 20 characters (Chinese: '列出数据库中的所有表', '描述指定表的结构', '执行SQL查询并返回结果'). LLMs cannot determine when/why to select these tools.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., table names from list_tables, column details from describe-table, result rows from read_query).
read_query accepts arbitrary SQL with no input validation, sanitization, or constraints. Vulnerable to SQL injection if LLM is prompted to construct queries. No mention of read-only enforcement or destructive query prevention.
list_tables has empty input schema ({}). describe-table and read_query have minimal parameter descriptions ('表名', 'SQL查询语句'). Parameter descriptions do not explain format, constraints, or expected values.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | <=2025-11-25 | v2 |
No error handling guidance. Code catches InvalidArgumentException but returns no recovery hints. LLM cannot self-correct or know whether to retry, ask user, or abort.