Trello MCP Server with HTTP support for managing Trello boards, lists, and cards
Tool definitions are present with schemas and descriptions, but quality is inconsistent. All 11 tools have basic descriptions (10-50 chars) and input schemas with required fields. However, descriptions are generic and lack actionable context for LLM selection. Parameter descriptions are minimal (e.g., 'ID of the board to read'). No output schemas documented. Error handling returns raw error text without recovery guidance. Tool names follow verb_noun convention (list_boards, create_card) but lack specificity about side effects. No tool annotations (readOnlyHint, destructiveHint) despite clear risk stratification (READ_ONLY, WRITE, DESTRUCTIVE). Missing idempotency guidance for retry-safe operations.
Add a comment to a card
Archive a card
Archive a list
Create a new card in a specific list
Create a new list in a specific board
Delete a board
List all open Trello boards
No output schemas documented. Handlers return JSON text wrapped in content arrays, but LLMs cannot infer field structure or plan downstream calls. Missing documented return types for all 11 tools.
Descriptions are generic and under 50 characters for most tools (e.g., 'List all open Trello boards', 'Read lists and cards from a specific board'). Lack context for WHEN to use each tool vs. alternatives, prerequisites, or side effects. Baseline for A+ tools is 50-200 chars with actionable guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | 2026-07-28+ | v2 |
Move a card to a different list
Read lists and cards from a specific board
Update a card name
Update a list name
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk stratification in metadata (READ_ONLY, WRITE, REVERSIBLE, DESTRUCTIVE). Agents cannot determine which tools are safe to retry or have irreversible consequences.
Error handling returns raw error messages without recovery guidance. E.g., 'Error: Board is closed' or 'Error: boardId and name are required' do not tell LLM what to do next (retry, ask user, call discovery tool). Missing error classification (retryable vs. user-fixable vs. fatal).
Parameter descriptions are minimal (e.g., 'ID of the board to read', 'Name of the list'). Missing format constraints, ranges, or examples. No guidance on how to obtain IDs if user only has names. Baseline for A+ tools is 50-100 chars per parameter with actionable constraints.