MCP server exposing the Jira REST API (boards, sprints, issues, JQL, and a generic passthrough) for Jira Cloud and Data Center
Two tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. list_boards has 5 parameters with types and descriptions (good baseline), but get_board has only 1 parameter. Neither tool description explains what data is returned or when to use each tool vs. the other. No error handling guidance. Descriptions are adequate (60-80 chars) but lack context on prerequisites, return structure, or recovery paths. Parameter descriptions are present but generic ('Board ID (numeric, from list_boards)' is weak, doesn't explain what a board represents or why you'd fetch one). No tool annotations (readOnlyHint, idempotentHint) despite both being read-only. Output schemas are not documented in the tool definitions.
Get a single Jira board by ID, including its projects, location, and settings.
List Jira agile boards (scrum or kanban), optionally filtered by type, name, or one project key/ID.
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., project IDs, board type) without knowing what get_board returns.
Tool descriptions lack context on WHEN to use each tool. Both operate on boards, the description should clarify: list_boards discovers available boards; get_board fetches details for a specific board. Without this, LLMs may call the wrong tool.
Parameter descriptions are generic and lack format/constraint guidance. 'Board ID (numeric, from list_boards)' doesn't explain the valid range, whether IDs are stable, or what happens if the ID doesn't exist. 'Filter by board name (partial match)' doesn't clarify case sensitivity or regex support.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
No error handling guidance. If get_board is called with an invalid boardId, what error is returned? Can the LLM retry? Should it call list_boards first? No recovery path is documented.
Tool annotations missing. Both tools are read-only and idempotent, but no readOnlyHint or idempotentHint is declared. This prevents agents from reasoning about safety and retry logic.