MCP server for managing GitHub PR review comments
Server has 4 tools with complete input schemas and descriptions. Naming follows verb_noun convention (list_, reply_, resolve_). However, tool descriptions are minimal (10-50 chars), lacking context on WHEN to use each tool and what they return. Parameters have types and descriptions, but lack constraints (enums, ranges). Output schemas are not documented, LLMs cannot predict response structure. The 'reply_and_resolve' tool violates single-responsibility principle by combining two actions. Error handling is generic ('Error: {str(e)}') with no recovery guidance.
List review threads for a GitHub pull request
Reply to a review thread and immediately resolve it
Add a reply to a review thread
Mark a review thread as resolved
Tool descriptions are too brief (10-50 chars). Lack context on WHEN to use, prerequisites, and what is returned. LLMs cannot distinguish between similar tools or plan multi-step workflows.
'reply_and_resolve' combines two distinct actions (reply + resolve) in one tool. Violates single-responsibility principle. Should be split into separate tools so agents can compose them independently.
Output schemas are not documented. Tool descriptions do not specify what fields are returned or their types. LLMs cannot predict response structure or plan downstream tool calls.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Error handling is generic ('Error: {str(e)}') with no recovery guidance. LLMs cannot determine if errors are retryable, user-fixable, or fatal. No actionable next steps provided.
Parameters lack constraints. 'unresolved_only' is boolean with no enum; 'body' is free-form string with no length limit or format guidance. No validation prevents invalid input.