MCP server for Zentao bug tracking system. Provides tools to query, manage, and resolve bugs via session-cookie authentication. Supports bug listing, detail retrieval, status updates, assignments, comments, and file attachments.
Zentao MCP server has significant definition quality gaps. Tool names lack action verbs (my_bugs, bug_detail, resolve_bug, assign_bug, comment_bug, bug_image). Descriptions are present but generic and lack LLM-optimized guidance on when/why to use each tool. Input schemas exist but are minimally documented, most parameters lack descriptions or type constraints. Output schemas are not documented. Error handling is minimal. The server reads credentials from creds.env and manages cookies locally, but no security documentation in tool definitions. Tool composition is reasonable (6 focused tools), but parameter naming inconsistencies (e.g., 'id' vs 'bug_id') and missing enum constraints reduce clarity.
将 bug 指派给指定人员。支持结构化指派说明(转派原因、待办·期望、关键信息、补充)或自定义 HTML 评论
获取指定 bug 的详细信息,包含基本字段(ID、标题、状态、优先级、严重程度、类型、产品、项目、模块、指派人、提出人、日期、截止日期、解决方案、解决人、解决日期、最后编辑人)、步骤、附件列表和流转记录(含评论和图片)
下载指定 bug 的图片附件。根据 bug 详情中的附件列表或流转记录中的图片 URL,下载并保存到本地
为指定 bug 添加评论(支持 HTML 格式)
获取指派给当前用户的所有 bug 列表,包含 bug ID、状态、优先级、严重程度、标题、产品、项目、提出人和提出日期
解决指定的 bug。支持结构化解决说明(根因、修复、改动文件、验证、影响范围)或自定义 HTML 评论。支持同时上传本地附件(multipart/form-data,files[] 通道),自动选择解决版本(优先 trunk,否则取第一个非空版本)
Tool names lack action verbs. 'my_bugs' and 'bug_detail' are noun-based; should be 'list_my_bugs' and 'get_bug_detail' to signal intent clearly to LLMs.
Parameter descriptions are missing or minimal. 'id' parameter in bug_detail, resolve_bug, assign_bug, comment_bug, bug_image lacks context (e.g., 'bug ID (numeric string, e.g. 12345)'). LLMs cannot infer format or constraints.
Output schemas are not documented. Tool descriptions state what is returned (e.g., 'bug list with ID, status, priority') but no formal schema. LLMs cannot plan downstream tool calls or extract structured data reliably.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
resolve_bug and assign_bug accept optional structured fields (rootCause, fix, files, verify, impact, extra, reason, todo, context) but no enum constraints or format guidance. LLMs may pass invalid combinations or malformed data.
No error handling guidance in tool descriptions. If login fails, credentials are missing, or a bug ID is invalid, the LLM receives raw errors with no recovery path (e.g., '缺少参数 id' or 'creds.env 缺 ZT_ACCOUNT/ZT_PASSWORD'). No actionable next steps.