Pack bug screenshots into AI coding instructions with MCP Server integration
BugPack defines 3 tools with basic schemas and descriptions. All tools have names starting with action verbs (list_, get_) and descriptions present. However, parameter descriptions are minimal (10-30 chars), lack detail on constraints/formats, and several parameters are marked optional without clear defaults. Input schemas exist but lack enum constraints for status values. Output schemas are not documented. Error handling and recovery guidance are absent. The tools follow a simple read-only pattern but lack the depth expected for production use.
Get full bug context (annotated screenshots + fix instructions) for AI repair
Get annotated screenshot of a bug
List all bugs grouped by project. Filter by project name or status
Parameter descriptions are too brief (10-30 chars) and lack actionable constraints. E.g., 'status' param says 'Filter by status: pending/annotating/generated/fixed/closed' but should specify: enum constraint, when to use each value, and what happens if omitted.
Output schemas are not documented. LLMs cannot plan downstream calls or extract required fields (e.g., bug_id, screenshot_url) without knowing the response structure. All three tools lack return type documentation.
No error handling or recovery guidance. If a bug_id is invalid or a screenshot_index is out of bounds, the tool provides no actionable error message. LLMs cannot self-correct or suggest alternatives.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Parameter optionality is unclear. 'bug_id' and 'bug_number' in get_bug_context are both optional, the description does not explain which is required, what happens if both are provided, or how the tool resolves them.
Status enum values are listed in description text, not as a formal enum constraint in the schema. LLMs may hallucinate invalid status values like 'resolved' or 'in_progress' instead of the documented set.