Taiga MCP server in TypeScript: six op-dispatching tools over MCP revision 2025-11-25
Six op-dispatching tools with complete input schemas and descriptions. Naming follows verb_noun pattern (projects, work, sprints, comments, attachments, wiki). Descriptions are present and substantive (100-300 chars), explaining operations and parameters. However, parameter descriptions are generic ('Project ID or slug') without format constraints or examples. No output schemas documented. Error handling is minimal, handlers throw but lack recovery guidance. Tool composition is sound (each handles one domain), but descriptions could better explain when to use each operation variant.
List, upload, download, or delete attachments across work items and wiki pages. | op | required args | optional args | notes | |---|---|---|---| | list | type, item | project | List attachments on a work item or wiki page | | upload | type, item, filePath OR fileContent | project, fileName, mimeType, description | Upload file to Taiga host from local path (harness resolves local:// URIs) or base64 | | download | type, attachmentId | savePath | Fetch metadata and bytes; writes to savePath when given | | delete | type, attachmentId | | Delete attachment by ID |
List, add, edit, or delete comments on issues, user stories, tasks, epics, and wiki pages. Note: Taiga soft-deletes comments on delete. | op | required args | optional args | | list | type, item | project, includeDeleted | | add | type, item, text | project | | edit | type, item, commentId, text | project | | delete | type, item, commentId | project |
List, get, create, update, or delete Taiga projects. Supports filtering by member, slug, or ID. | op | required args | optional args | notes | |---|---|---|---| | list | | member, slug | List projects visible to authenticated user or filtered by member/slug | | get | project | | Fetch full project details by ID or slug | | create | name | description, is_private | Create new project | | update | project | name, description, is_private | Update project metadata | | delete | project | | Delete project permanently |
List, get, create, update, or delete sprints (milestones) in Taiga projects. | op | required args | optional args | notes | |---|---|---|---| | list | project | | List all sprints in project | | get | project, sprint | | Fetch full sprint details and stats | | create | project, name, start, finish | description | Create new sprint | | update | project, sprint | name, start, finish, description | Update sprint | | delete | project, sprint | | Delete sprint permanently |
No output schemas documented. LLMs cannot predict response structure or plan downstream tool calls. Handlers return text only; no structured content or field documentation.
Parameter descriptions lack format constraints and validation rules. E.g., 'Project ID or slug' does not specify slug format, ID range, or date format for start/finish. LLMs cannot validate inputs before calling.
Error handling is minimal. Handlers throw exceptions but provide no recovery guidance. LLMs receive raw errors with no actionable next steps (e.g., 'User not found. Try search_users()' is absent).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
List, get, create, update, or delete wiki pages in Taiga projects. | op | required args | optional args | notes | |---|---|---|---| | list | project | | List all wiki pages in project | | get | project, page | | Fetch full wiki page content and metadata | | create | project, slug, content | | Create new wiki page | | update | project, page, content | | Update wiki page content | | delete | project, page | | Delete wiki page permanently |
List, get, create, update, or delete work items (user stories, tasks, issues) in Taiga projects. Batch operations supported. | op | required args | optional args | notes | |---|---|---|---| | list | project | type, status, assignee, sprint, limit | List work items with optional filtering | | get | project, item | | Fetch full work item details | | create | project, type, subject | description, status, priority, severity, assignee, sprint, points, tags | Create new work item | | update | project, item | subject, description, status, priority, severity, assignee, sprint, points, tags | Update work item | | delete | project, item | | Delete work item permanently | | batch_create | project, type, items | sprint, assignee, status, priority, severity, points, tags | Create multiple work items (max 20) | | batch_update | project, items | status, priority, severity, assignee, sprint, points, tags | Update multiple work items (max 20) | | batch_delete | project, items | | Delete multiple work items (max 20) |
Destructive operations (delete, update) lack confirmation or dry-run support. Agents can permanently delete projects, work items, sprints, and wiki pages without a safety gate.
Batch operations (batch_create, batch_update, batch_delete in work tool) lack per-item success/failure reporting. If one item fails, the agent cannot determine which succeeded and which failed.