Let the grumpy senior dev review your code with this MCP server
Grumpy Dev MCP is an extremely minimal MCP server with only 1 tool. The tool has a bare-bones definition: a clear action verb in the name ('review_code'), a description present but somewhat generic (71 characters), and a single required parameter with basic typing and description. However, critical production-grade patterns are almost entirely absent: no output schema documentation, no error handling guidance, no parameter validation constraints (enums, ranges, patterns), no batch processing capability, and the description does not explain WHEN to use this tool versus alternatives, WHAT format the output takes, or any prerequisites. The parameter description is minimal (27 chars) and does not specify expected code length, language hints, or output format. For a single-tool server, this represents poor signal for LLM tool selection and composition. The GenaiScript wrapper abstracts the actual MCP protocol implementation, making it impossible to verify stateless request handling, _meta logLevel support, or proper schema registration from the visible source. This appears to be a proof-of-concept or educational project rather than a production-grade tool.
Use this tool to get a thorough code review from a grumpy senior developer
No output schema documented. The tool description does not specify what the LLM should expect in the response (e.g., is it plain text, structured fields, markdown?). This forces the LLM to infer the response format and can cause parsing failures or suboptimal downstream reasoning.
Tool description is generic and lacks LLM-optimized context. At 71 characters, it answers WHAT (code review) but not WHEN (what kinds of code? code quality vs. security vs. performance?) or expected output format. Production baselines average 194 chars and include context for LLM decision-making.
Parameter 'code' has minimal description (27 chars: 'The code to be reviewed'). No constraints on code length, language, format (snippet vs. file vs. multi-file), or encoding. This invites the LLM to pass arbitrarily large payloads or incompatible formats.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 45 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 33 | - | v1 |
No error handling or recovery guidance. If the GenaiScript backend fails, times out, or encounters unsupported code, the LLM receives no actionable error message or suggestions for next steps (e.g., 'Try splitting the code into smaller files').
Single tool with no composition strategy. If an agent wants to iterate on code after review, there is no separate 'apply_review' or 'generate_fix' tool, forcing manual out-of-band workflows.