MCP server for connecting to Dameng database, enabling SQL query execution and table data access through MCP tools and resources
Single tool with minimal definition quality. execute_sql has a basic schema with one required parameter (query: string), but lacks critical safeguards for a destructive operation. Description is generic (34 chars, below 50-char baseline for clarity). No parameter constraints, no output schema documentation, no error recovery guidance. Tool accepts arbitrary SQL including DELETE/DROP without confirmation, dry-run, or permission checks. No idempotency markers. Resource implementation shows SQL injection vulnerability in read_resource (line: `SELECT * FROM {table} LIMIT 100` with unsanitized table name). Logging present but does not compensate for missing safety patterns.
Execute an SQL query on the Dameng server
No input validation or SQL injection protection. Table name in read_resource() is interpolated directly into query without sanitization. execute_sql accepts arbitrary queries including destructive operations (DELETE, DROP, TRUNCATE) without confirmation or dry-run.
Missing output schema documentation. Tool description does not specify what fields are returned, data types, or structure. LLM cannot plan downstream operations or extract specific fields.
No error classification or recovery guidance. Errors return raw exception messages (e.g., 'Error executing query: ...') without actionable next steps. LLM cannot distinguish retryable vs. fatal failures.
Destructive operations lack confirmation or dry-run support. A tool that executes DELETE or DROP should require explicit confirmation or offer a dry-run mode to prevent accidental data loss.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | <=2025-11-25 | v2 |
Parameter description is trivial (11 chars: 'The SQL query to execute'). Does not specify format constraints, examples of valid queries, or guidance on when to use this tool vs. resource reading.