Stop AI agents from doing dangerous things through MCP. Guard any MCP server with allow/deny/approve policies.
Both tools have minimal descriptions (under 20 chars penalty applies) and lack parameter descriptions entirely. The 'query' tool description is 44 chars; 'execute' is 45 chars, both below the 10-1024 baseline and lack actionable context. Neither tool documents what happens on error, retry behavior, or side effects. No output schema documented. The 'execute' tool is particularly dangerous, it accepts arbitrary shell commands with zero validation, sanitization, or permission gating. This is a mock/demo server, but the tool definitions would fail code review in production.
Execute a shell command on the server
Execute a SQL query against the database
Parameter descriptions missing entirely. 'sql' and 'command' parameters have no descriptions explaining format, constraints, or examples. LLMs cannot infer parameter meaning from names alone.
Tool descriptions are too short (44-45 chars) and lack actionable context. Do not state WHAT the tool does, WHEN to use it, or prerequisites. 'Execute a SQL query' does not explain idempotency, error recovery, or side effects.
No output schema documented. LLMs cannot plan downstream calls or extract structured data. Responses are free-text strings requiring parsing.
'execute' tool accepts arbitrary shell commands with zero input validation, sanitization, or permission gating. No dry-run, confirmation, or audit trail. Marked DESTRUCTIVE but lacks error handling guidance or recovery paths.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
No error handling guidance. Responses do not tell LLMs what to do on failure (retry? ask user? abort?). No categorization of errors as retryable, user-fixable, or fatal.