@xihe-lab/tapd-mcp-server 1.4.1 → 1.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -2
- package/dist/index.js +0 -0
- package/dist/integration-test.js +1 -1
- package/dist/integration-test.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +43 -2
- package/dist/server.js.map +1 -1
- package/dist/tapd-client.d.ts.map +1 -1
- package/dist/tapd-client.js.map +1 -1
- package/dist/tools/attachment.d.ts.map +1 -1
- package/dist/tools/attachment.js +14 -9
- package/dist/tools/attachment.js.map +1 -1
- package/dist/tools/board.js +12 -12
- package/dist/tools/board.js.map +1 -1
- package/dist/tools/bug.js +26 -26
- package/dist/tools/bug.js.map +1 -1
- package/dist/tools/changes.js +4 -4
- package/dist/tools/changes.js.map +1 -1
- package/dist/tools/comment.js +9 -9
- package/dist/tools/comment.js.map +1 -1
- package/dist/tools/custom-fields.js +2 -2
- package/dist/tools/custom-fields.js.map +1 -1
- package/dist/tools/iteration.js +14 -14
- package/dist/tools/iteration.js.map +1 -1
- package/dist/tools/mini-comment.js +9 -9
- package/dist/tools/mini-comment.js.map +1 -1
- package/dist/tools/mini-item.js +14 -14
- package/dist/tools/mini-item.js.map +1 -1
- package/dist/tools/program.js +4 -4
- package/dist/tools/program.js.map +1 -1
- package/dist/tools/relations.js +6 -6
- package/dist/tools/relations.js.map +1 -1
- package/dist/tools/release.js +12 -12
- package/dist/tools/release.js.map +1 -1
- package/dist/tools/report.js +2 -2
- package/dist/tools/report.js.map +1 -1
- package/dist/tools/settings.js +18 -18
- package/dist/tools/settings.js.map +1 -1
- package/dist/tools/source.js +6 -6
- package/dist/tools/source.js.map +1 -1
- package/dist/tools/story.js +56 -56
- package/dist/tools/story.js.map +1 -1
- package/dist/tools/task.js +16 -16
- package/dist/tools/task.js.map +1 -1
- package/dist/tools/test.js +48 -48
- package/dist/tools/test.js.map +1 -1
- package/dist/tools/timesheet.js +6 -6
- package/dist/tools/timesheet.js.map +1 -1
- package/dist/tools/utility.d.ts.map +1 -1
- package/dist/tools/utility.js +9 -8
- package/dist/tools/utility.js.map +1 -1
- package/dist/tools/wiki.js +14 -14
- package/dist/tools/wiki.js.map +1 -1
- package/dist/tools/workflow.js +2 -2
- package/dist/tools/workflow.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -84,6 +84,21 @@ claude mcp remove tapd
|
|
|
84
84
|
|
|
85
85
|
配置格式与上方相同。
|
|
86
86
|
|
|
87
|
+
#### WorkBuddy(腾讯 CodeBuddy 办公客户端)
|
|
88
|
+
|
|
89
|
+
WorkBuddy 采用标准 `mcpServers` 配置,支持两级配置文件:
|
|
90
|
+
|
|
91
|
+
| 级别 | 配置文件路径 | 适用场景 |
|
|
92
|
+
|------|-------------|---------|
|
|
93
|
+
| 用户级 | `~/.workbuddy/mcp.json` | 配置一次,所有项目复用(推荐) |
|
|
94
|
+
| 项目级 | `<项目目录>/.workbuddy/mcp.json` | 仅当前项目生效 |
|
|
95
|
+
|
|
96
|
+
操作入口:侧边栏 **插件** → 右上角 **MCP 服务器** → **配置 MCP**,在可视化编辑器中粘贴与上方相同的 `mcpServers` 配置并保存(也可直接编辑上述路径的 JSON 文件)。
|
|
97
|
+
|
|
98
|
+
保存后检查 MCP Server 状态灯:🟢 连接成功;🔴 配置异常(依次检查 JSON 格式、`npx` 环境、凭证有效性)。
|
|
99
|
+
|
|
100
|
+
> 安全提示:`TAPD_ACCESS_TOKEN` 是调用凭证。使用项目级配置时,请将 `.workbuddy/` 加入 `.gitignore`,避免提交到仓库。
|
|
101
|
+
|
|
87
102
|
### 3. 开始使用
|
|
88
103
|
|
|
89
104
|
配置完成后重启客户端,直接用自然语言与 AI 助手对话:
|
|
@@ -161,6 +176,12 @@ claude mcp remove tapd
|
|
|
161
176
|
|
|
162
177
|
可通过 `tapd_get_workitem_types` 查询项目中可用的 TASK 类型 ID。
|
|
163
178
|
|
|
179
|
+
### 调用工具报「ID 超出 JS 安全整数范围」或首次调用 ID 校验失败
|
|
180
|
+
|
|
181
|
+
TAPD 的需求/缺陷/任务等实体长 ID 为 19-20 位数字(如 `1139814312001001378`),超出 JS 安全整数上限(`Number.MAX_SAFE_INTEGER`,16 位),以 JSON 数值形式传递会丢精度导致查询为空。所有长 ID 参数必须以字符串(带引号)传递。
|
|
182
|
+
|
|
183
|
+
自 v1.4.3 起:所有工具的长 ID 参数描述已包含引导提示;若传入安全整数范围内的数值(≤16 位,如短 ID)会自动转为字符串;超出安全范围的数值会返回明确错误提示,请按提示以字符串重传。
|
|
184
|
+
|
|
164
185
|
### 支持 Basic Auth 吗
|
|
165
186
|
|
|
166
187
|
支持。设置 `TAPD_API_USER` 和 `TAPD_API_PASSWORD` 即可,与 Access Token 二选一。
|
|
@@ -184,9 +205,9 @@ claude mcp add -s user tapd \
|
|
|
184
205
|
-- npx -y "@xihe-lab/tapd-mcp-server@latest"
|
|
185
206
|
```
|
|
186
207
|
|
|
187
|
-
### Claude Desktop / Cursor
|
|
208
|
+
### Claude Desktop / Cursor / WorkBuddy
|
|
188
209
|
|
|
189
|
-
修改配置文件中的版本号为 `@latest`
|
|
210
|
+
修改配置文件中的版本号为 `@latest` 或删除版本锁定(WorkBuddy 的配置文件路径见上文「WorkBuddy 配置」小节):
|
|
190
211
|
|
|
191
212
|
```json
|
|
192
213
|
{
|
package/dist/index.js
CHANGED
|
File without changes
|
package/dist/integration-test.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integration-test.js","sourceRoot":"","sources":["../src/integration-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"integration-test.js","sourceRoot":"","sources":["../src/integration-test.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAU1C,wBAAgB,YAAY,IAAI,SAAS,CAOxC;AA0CD,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAkCvE;AAED,wBAAsB,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB3D"}
|
package/dist/server.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
|
+
import { z } from 'zod';
|
|
3
4
|
import { TapdClient } from './tapd-client.js';
|
|
4
5
|
let client = null;
|
|
5
6
|
function getTapdClient() {
|
|
@@ -13,10 +14,50 @@ export function createServer() {
|
|
|
13
14
|
});
|
|
14
15
|
return server;
|
|
15
16
|
}
|
|
17
|
+
const LONG_ID_PARAM = /^(id|ids)$|^([a-z_]+_ids?)$/;
|
|
18
|
+
function wrapLongIdField(field, key) {
|
|
19
|
+
const wrap = (inner) => z.preprocess(v => {
|
|
20
|
+
if (typeof v !== 'number')
|
|
21
|
+
return v;
|
|
22
|
+
if (Number.isSafeInteger(v))
|
|
23
|
+
return String(v);
|
|
24
|
+
throw new Error(`参数 ${key} 的值超出 JS 安全整数范围(精度丢失),请以字符串(带引号)重传`);
|
|
25
|
+
}, inner);
|
|
26
|
+
if (field instanceof z.ZodString)
|
|
27
|
+
return wrap(field);
|
|
28
|
+
if (field instanceof z.ZodOptional || field instanceof z.ZodNullable) {
|
|
29
|
+
const inner = field._def.innerType;
|
|
30
|
+
if (!(inner instanceof z.ZodString))
|
|
31
|
+
return null;
|
|
32
|
+
const core = wrap(inner);
|
|
33
|
+
const rebuilt = field instanceof z.ZodOptional ? core.optional() : core.nullable();
|
|
34
|
+
return field.description ? rebuilt.describe(field.description) : rebuilt;
|
|
35
|
+
}
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
39
|
+
function wrapLongIdParams(schema) {
|
|
40
|
+
const shape = schema instanceof z.ZodObject ? schema.shape : schema;
|
|
41
|
+
if (typeof shape !== 'object' || shape === null)
|
|
42
|
+
return schema;
|
|
43
|
+
const next = {};
|
|
44
|
+
let touched = false;
|
|
45
|
+
const entries = Object.entries(shape);
|
|
46
|
+
for (const [key, field] of entries) {
|
|
47
|
+
const wrapped = LONG_ID_PARAM.test(key) ? wrapLongIdField(field, key) : null;
|
|
48
|
+
if (wrapped) {
|
|
49
|
+
touched = true;
|
|
50
|
+
next[key] = wrapped;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
next[key] = field;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return touched ? next : shape;
|
|
57
|
+
}
|
|
16
58
|
export function registerTools(server, tools) {
|
|
17
59
|
for (const tool of tools) {
|
|
18
|
-
|
|
19
|
-
const schema = tool.inputSchema.shape ?? tool.inputSchema;
|
|
60
|
+
const schema = wrapLongIdParams(tool.inputSchema);
|
|
20
61
|
server.tool(tool.name, tool.description, schema, async (args) => {
|
|
21
62
|
try {
|
|
22
63
|
const tapdClient = getTapdClient();
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tapd-client.d.ts","sourceRoot":"","sources":["../src/tapd-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,WAAW,CAAC,CAAS;IAE7B,OAAO;IAcP;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU;IAIzE;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU;IAWxF;;;OAGG;IACH,MAAM,CAAC,OAAO,IAAI,UAAU;IAmB5B;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM,GAAG,SAAS;IAIxC;;OAEG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAKlD;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,MAAM,GAAG,SAAS;IAI1D;;OAEG;IACH,MAAM,CAAC,4BAA4B,IAAI,MAAM,GAAG,SAAS;IAIzD;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"tapd-client.d.ts","sourceRoot":"","sources":["../src/tapd-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,WAAW,CAAC,CAAS;IAE7B,OAAO;IAcP;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU;IAIzE;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU;IAWxF;;;OAGG;IACH,MAAM,CAAC,OAAO,IAAI,UAAU;IAmB5B;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,MAAM,GAAG,SAAS;IAIxC;;OAEG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAKlD;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,MAAM,GAAG,SAAS;IAI1D;;OAEG;IACH,MAAM,CAAC,4BAA4B,IAAI,MAAM,GAAG,SAAS;IAIzD;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,UAAO,GAAG,MAAM;IAc1F;;;;;;;KAOC;IACK,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,KAAK,GAAG,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAC7D,OAAO,CAAC,CAAC,CAAC;IAkFb;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1F;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAGxG;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,EAAE,MAAM,CAAC;CACd"}
|
package/dist/tapd-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tapd-client.js","sourceRoot":"","sources":["../src/tapd-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,OAAO,UAAU;IACb,UAAU,CAAS;IACnB,OAAO,CAAS;IAChB,QAAQ,CAAoB;IAC5B,OAAO,CAAU;IACjB,WAAW,CAAU;IAE7B,YACE,UAAkB,EAClB,OAAgB,EAChB,QAA4B,EAC5B,OAAgB,EAChB,WAAoB;QAEpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,qBAAqB,CAAC;QACjF,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,OAAO,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,WAAmB,EAAE,OAAgB;QAC1D,OAAO,IAAI,UAAU,CAAC,UAAU,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAe,EAAE,WAAmB,EAAE,OAAgB;QACzE,MAAM,WAAW,GAAG,GAAG,OAAO,IAAI,WAAW,EAAE,CAAC;QAChD,OAAO,IAAI,UAAU,CACnB,SAAS,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EACtD,OAAO,EACP,OAAO,EACP,OAAO,EACP,WAAW,CACZ,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAO;QACZ,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAClD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAClD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAE9C,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,UAAU,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;YAC3B,OAAO,UAAU,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,IAAI,KAAK,CACb,8GAA8G,CAC/G,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW;QAChB,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,qBAAqB;QAC1B,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QACjD,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,6BAA6B;QAClC,OAAO,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,4BAA4B;QACjC,OAAO,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAmB,EAAE,WAA4B,EAAE,
|
|
1
|
+
{"version":3,"file":"tapd-client.js","sourceRoot":"","sources":["../src/tapd-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../../src/tools/attachment.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,eAAO,MAAM,eAAe,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../../src/tools/attachment.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,eAAO,MAAM,eAAe,EAAE,OAAO,EAqGpC,CAAC"}
|
package/dist/tools/attachment.js
CHANGED
|
@@ -7,8 +7,8 @@ export const attachmentTools = [
|
|
|
7
7
|
description: 'Get attachment list from TAPD',
|
|
8
8
|
inputSchema: z.object({
|
|
9
9
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
10
|
-
id: z.string().optional().describe('Attachment ID, supports multiple IDs'),
|
|
11
|
-
entity_id: z.string().optional().describe('Related entity ID (story/task/bug/wiki ID)'),
|
|
10
|
+
id: z.string().optional().describe('Attachment ID, supports multiple IDs;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
11
|
+
entity_id: z.string().optional().describe('Related entity ID (story/task/bug/wiki ID);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
12
12
|
entity_type: z.string().optional().describe('Entity type (story, task, bug, wiki)'),
|
|
13
13
|
filename: z.string().optional().describe('Filename'),
|
|
14
14
|
owner: z.string().optional().describe('Uploader'),
|
|
@@ -32,7 +32,7 @@ export const attachmentTools = [
|
|
|
32
32
|
description: 'Get a single attachment from TAPD',
|
|
33
33
|
inputSchema: z.object({
|
|
34
34
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
35
|
-
id: z.string().describe('Attachment ID (required)'),
|
|
35
|
+
id: z.string().describe('Attachment ID (required);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
36
36
|
fields: z.string().optional().describe('Comma-separated list of fields to return'),
|
|
37
37
|
}),
|
|
38
38
|
handler: async (client, params) => {
|
|
@@ -45,10 +45,12 @@ export const attachmentTools = [
|
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
47
|
name: 'tapd_get_attachment_download_url',
|
|
48
|
-
description: 'Get download URL for a single attachment
|
|
48
|
+
description: 'Get download URL for a single attachment. Returns the Attachment object whose download_url field ' +
|
|
49
|
+
'is a signed file.tapd.cn URL (valid for a limited period). Works with ordinary read scope ' +
|
|
50
|
+
'(attachment#r) on OAuth; no extra permission needed.',
|
|
49
51
|
inputSchema: z.object({
|
|
50
52
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
51
|
-
id: z.string().describe('Attachment ID (required)'),
|
|
53
|
+
id: z.string().describe('Attachment ID (required);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
52
54
|
filename: z.string().optional().describe('Filename for download'),
|
|
53
55
|
}),
|
|
54
56
|
handler: async (client, params) => {
|
|
@@ -56,7 +58,10 @@ export const attachmentTools = [
|
|
|
56
58
|
if (!workspaceId) {
|
|
57
59
|
throw new Error('workspace_id is required (either provide it or set TAPD_DEFAULT_WORKSPACE_ID env)');
|
|
58
60
|
}
|
|
59
|
-
|
|
61
|
+
// 1.4.4 修复:原 /attachments/documents_down 端点需要额外权限(attachments::documents_down),
|
|
62
|
+
// 普通 OAuth token 一律 403;改走 /attachments/down(attachment#r 即可),返回体 Attachment.download_url
|
|
63
|
+
// 即签名下载地址。参数签名与工具名保持不变(向后兼容)。
|
|
64
|
+
return client.get('/attachments/down', { workspace_id: workspaceId, id: params.id });
|
|
60
65
|
},
|
|
61
66
|
},
|
|
62
67
|
// Mini (轻协作) API attachment tools
|
|
@@ -65,8 +70,8 @@ export const attachmentTools = [
|
|
|
65
70
|
description: 'Get attachments from mini workspace',
|
|
66
71
|
inputSchema: z.object({
|
|
67
72
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
68
|
-
id: z.string().optional().describe('Attachment ID'),
|
|
69
|
-
entry_id: z.string().optional().describe('Item ID'),
|
|
73
|
+
id: z.string().optional().describe('Attachment ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
74
|
+
entry_id: z.string().optional().describe('Item ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
70
75
|
filename: z.string().optional().describe('Filename'),
|
|
71
76
|
owner: z.string().optional().describe('Uploader'),
|
|
72
77
|
limit: z.number().optional().describe('Return count, default 30, max 200'),
|
|
@@ -85,7 +90,7 @@ export const attachmentTools = [
|
|
|
85
90
|
description: 'Get download URL for a single mini workspace attachment (valid for 300s)',
|
|
86
91
|
inputSchema: z.object({
|
|
87
92
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
88
|
-
id: z.string().describe('Attachment ID (required)'),
|
|
93
|
+
id: z.string().describe('Attachment ID (required);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
89
94
|
}),
|
|
90
95
|
handler: async (client, params) => {
|
|
91
96
|
const workspaceId = params.workspace_id ?? TapdClient.getDefaultWorkspaceId();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../src/tools/attachment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAc;IACxC,qCAAqC;IACrC;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,+BAA+B;QAC5C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAChE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../src/tools/attachment.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/board.js
CHANGED
|
@@ -6,14 +6,14 @@ export const boardTools = [
|
|
|
6
6
|
description: "新建看板工作项",
|
|
7
7
|
inputSchema: z.object({
|
|
8
8
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
9
|
-
board_id: z.
|
|
10
|
-
column_id: z.
|
|
9
|
+
board_id: z.string().describe("看板ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
10
|
+
column_id: z.string().describe("看板列ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
11
11
|
name: z.string().describe("工作项标题 (必填)"),
|
|
12
12
|
description: z.string().optional().describe("详细描述"),
|
|
13
13
|
owner: z.string().optional().describe("负责人,默认当前用户"),
|
|
14
14
|
creator: z.string().optional().describe("创建人,默认当前用户"),
|
|
15
15
|
priority: z.string().optional().describe("优先级"),
|
|
16
|
-
category_id: z.
|
|
16
|
+
category_id: z.string().optional().describe("分类ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
17
17
|
due: z.string().optional().describe("预计完成日期,格式: YYYY-MM-DD"),
|
|
18
18
|
}),
|
|
19
19
|
handler: async (client, params) => {
|
|
@@ -29,15 +29,15 @@ export const boardTools = [
|
|
|
29
29
|
description: "获取看板工作项列表",
|
|
30
30
|
inputSchema: z.object({
|
|
31
31
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
32
|
-
board_id: z.
|
|
33
|
-
column_id: z.
|
|
34
|
-
id: z.string().optional().describe(
|
|
32
|
+
board_id: z.string().optional().describe("看板ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
33
|
+
column_id: z.string().optional().describe("看板列ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
34
|
+
id: z.string().optional().describe('工作项ID,支持多ID查询;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
35
35
|
name: z.string().optional().describe("工作项标题,支持模糊匹配"),
|
|
36
36
|
owner: z.string().optional().describe("负责人"),
|
|
37
37
|
creator: z.string().optional().describe("创建人"),
|
|
38
38
|
status: z.string().optional().describe("状态"),
|
|
39
39
|
priority: z.string().optional().describe("优先级"),
|
|
40
|
-
category_id: z.
|
|
40
|
+
category_id: z.string().optional().describe("分类ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
41
41
|
created: z.string().optional().describe("创建时间,支持时间查询"),
|
|
42
42
|
modified: z.string().optional().describe("修改时间,支持时间查询"),
|
|
43
43
|
due: z.string().optional().describe("预计完成日期,支持时间查询"),
|
|
@@ -58,10 +58,10 @@ export const boardTools = [
|
|
|
58
58
|
name: "tapd_update_board_card",
|
|
59
59
|
description: "更新看板工作项",
|
|
60
60
|
inputSchema: z.object({
|
|
61
|
-
id: z.string().describe(
|
|
61
|
+
id: z.string().describe('工作项ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
62
62
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
63
|
-
board_id: z.
|
|
64
|
-
column_id: z.
|
|
63
|
+
board_id: z.string().optional().describe("看板ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
64
|
+
column_id: z.string().optional().describe("看板列ID(用于移动卡片);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
65
65
|
name: z.string().optional().describe("工作项标题"),
|
|
66
66
|
description: z.string().optional().describe("详细描述"),
|
|
67
67
|
owner: z.string().optional().describe("负责人"),
|
|
@@ -82,8 +82,8 @@ export const boardTools = [
|
|
|
82
82
|
description: "获取看板板块",
|
|
83
83
|
inputSchema: z.object({
|
|
84
84
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
85
|
-
board_id: z.
|
|
86
|
-
id: z.
|
|
85
|
+
board_id: z.string().describe("看板ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
86
|
+
id: z.string().optional().describe("看板列ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度"),
|
|
87
87
|
fields: z.string().optional().describe("指定返回字段"),
|
|
88
88
|
}),
|
|
89
89
|
handler: async (client, params) => {
|
package/dist/tools/board.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/tools/board.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,CAAC,MAAM,UAAU,GAAc;IACnC;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAChE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/tools/board.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/bug.js
CHANGED
|
@@ -6,7 +6,7 @@ export const bugTools = [
|
|
|
6
6
|
description: 'Query TAPD bugs with filters',
|
|
7
7
|
inputSchema: z.object({
|
|
8
8
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
9
|
-
id: z.string().optional().describe('Supports multiple IDs'),
|
|
9
|
+
id: z.string().optional().describe('Supports multiple IDs;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
10
10
|
title: z.string().optional().describe('Bug title, supports fuzzy matching'),
|
|
11
11
|
priority: z.string().optional().describe('Priority, recommend using priority_label'),
|
|
12
12
|
priority_label: z.string().optional().describe('Priority (recommended)'),
|
|
@@ -14,7 +14,7 @@ export const bugTools = [
|
|
|
14
14
|
status: z.string().optional().describe('Status, supports enum query'),
|
|
15
15
|
v_status: z.string().optional().describe('Status (Chinese)'),
|
|
16
16
|
label: z.string().optional().describe('Label, supports enum query'),
|
|
17
|
-
iteration_id: z.string().optional().describe('Iteration ID, supports enum query'),
|
|
17
|
+
iteration_id: z.string().optional().describe('Iteration ID, supports enum query;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
18
18
|
module: z.string().optional().describe('Module, supports enum query'),
|
|
19
19
|
current_owner: z.string().optional().describe('Current owner, supports fuzzy matching'),
|
|
20
20
|
reporter: z.string().optional().describe('Reporter, supports multiple users query'),
|
|
@@ -32,7 +32,7 @@ export const bugTools = [
|
|
|
32
32
|
begin: z.string().optional().describe('Estimated start date, Format: YYYY-MM-DD'),
|
|
33
33
|
due: z.string().optional().describe('Estimated end date, Format: YYYY-MM-DD'),
|
|
34
34
|
deadline: z.string().optional().describe('Resolve deadline, Format: YYYY-MM-DD'),
|
|
35
|
-
release_id: z.string().optional().describe('Release plan'),
|
|
35
|
+
release_id: z.string().optional().describe('Release plan;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
36
36
|
version_report: z.string().optional().describe('Found version, enum query'),
|
|
37
37
|
version_test: z.string().optional().describe('Verify version'),
|
|
38
38
|
version_fix: z.string().optional().describe('Fix version'),
|
|
@@ -87,10 +87,10 @@ export const bugTools = [
|
|
|
87
87
|
current_owner: z.string().optional().describe('Current owner (defaults to TAPD_NICK_NAME env)'),
|
|
88
88
|
description: z.string().optional().describe('Detailed description'),
|
|
89
89
|
module: z.string().optional().describe('Module'),
|
|
90
|
-
iteration_id: z.string().optional().describe('Iteration ID'),
|
|
90
|
+
iteration_id: z.string().optional().describe('Iteration ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
91
91
|
label: z.string().optional().describe('Label, multiple values separated by |'),
|
|
92
92
|
effort: z.number().optional().describe('Estimated effort'),
|
|
93
|
-
template_id: z.string().optional().describe('Template ID'),
|
|
93
|
+
template_id: z.string().optional().describe('Template ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
94
94
|
cc: z.string().optional().describe('CC person'),
|
|
95
95
|
te: z.string().optional().describe('Tester'),
|
|
96
96
|
de: z.string().optional().describe('Developer'),
|
|
@@ -103,7 +103,7 @@ export const bugTools = [
|
|
|
103
103
|
begin: z.string().optional().describe('Estimated start date, Format: YYYY-MM-DD'),
|
|
104
104
|
due: z.string().optional().describe('Estimated end date, Format: YYYY-MM-DD'),
|
|
105
105
|
deadline: z.string().optional().describe('Resolve deadline, Format: YYYY-MM-DD'),
|
|
106
|
-
release_id: z.string().optional().describe('Release plan'),
|
|
106
|
+
release_id: z.string().optional().describe('Release plan;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
107
107
|
version_report: z.string().optional().describe('Found version'),
|
|
108
108
|
version_test: z.string().optional().describe('Verify version'),
|
|
109
109
|
version_fix: z.string().optional().describe('Fix version'),
|
|
@@ -147,7 +147,7 @@ export const bugTools = [
|
|
|
147
147
|
name: 'tapd_update_bug',
|
|
148
148
|
description: 'Update an existing bug in TAPD',
|
|
149
149
|
inputSchema: z.object({
|
|
150
|
-
id: z.string().describe('Bug ID (required)'),
|
|
150
|
+
id: z.string().describe('Bug ID (required);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
151
151
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
152
152
|
title: z.string().optional().describe('Bug title'),
|
|
153
153
|
priority: z.string().optional().describe('Priority'),
|
|
@@ -157,7 +157,7 @@ export const bugTools = [
|
|
|
157
157
|
current_owner: z.string().optional().describe('Current owner'),
|
|
158
158
|
description: z.string().optional().describe('Detailed description'),
|
|
159
159
|
module: z.string().optional().describe('Module'),
|
|
160
|
-
iteration_id: z.string().optional().describe('Iteration ID'),
|
|
160
|
+
iteration_id: z.string().optional().describe('Iteration ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
161
161
|
label: z.string().optional().describe('Label, multiple values separated by |'),
|
|
162
162
|
effort: z.number().optional().describe('Estimated effort'),
|
|
163
163
|
cc: z.string().optional().describe('CC person'),
|
|
@@ -168,7 +168,7 @@ export const bugTools = [
|
|
|
168
168
|
begin: z.string().optional().describe('Estimated start date, Format: YYYY-MM-DD'),
|
|
169
169
|
due: z.string().optional().describe('Estimated end date, Format: YYYY-MM-DD'),
|
|
170
170
|
deadline: z.string().optional().describe('Resolve deadline, Format: YYYY-MM-DD'),
|
|
171
|
-
release_id: z.string().optional().describe('Release plan'),
|
|
171
|
+
release_id: z.string().optional().describe('Release plan;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
172
172
|
version_report: z.string().optional().describe('Found version'),
|
|
173
173
|
version_test: z.string().optional().describe('Verify version'),
|
|
174
174
|
version_fix: z.string().optional().describe('Fix version'),
|
|
@@ -211,7 +211,7 @@ export const bugTools = [
|
|
|
211
211
|
description: 'Get the count of bugs matching filters',
|
|
212
212
|
inputSchema: z.object({
|
|
213
213
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
214
|
-
id: z.string().optional().describe('Supports multiple IDs'),
|
|
214
|
+
id: z.string().optional().describe('Supports multiple IDs;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
215
215
|
title: z.string().optional().describe('Bug title, supports fuzzy matching'),
|
|
216
216
|
priority: z.string().optional().describe('Priority, recommend using priority_label'),
|
|
217
217
|
priority_label: z.string().optional().describe('Priority (recommended)'),
|
|
@@ -219,7 +219,7 @@ export const bugTools = [
|
|
|
219
219
|
status: z.string().optional().describe('Status, supports enum query'),
|
|
220
220
|
v_status: z.string().optional().describe('Status (Chinese)'),
|
|
221
221
|
label: z.string().optional().describe('Label, supports enum query'),
|
|
222
|
-
iteration_id: z.string().optional().describe('Iteration ID, supports enum query'),
|
|
222
|
+
iteration_id: z.string().optional().describe('Iteration ID, supports enum query;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
223
223
|
module: z.string().optional().describe('Module, supports enum query'),
|
|
224
224
|
current_owner: z.string().optional().describe('Current owner, supports fuzzy matching'),
|
|
225
225
|
reporter: z.string().optional().describe('Reporter, supports multiple users query'),
|
|
@@ -237,7 +237,7 @@ export const bugTools = [
|
|
|
237
237
|
begin: z.string().optional().describe('Estimated start date, Format: YYYY-MM-DD'),
|
|
238
238
|
due: z.string().optional().describe('Estimated end date, Format: YYYY-MM-DD'),
|
|
239
239
|
deadline: z.string().optional().describe('Resolve deadline, Format: YYYY-MM-DD'),
|
|
240
|
-
release_id: z.string().optional().describe('Release plan'),
|
|
240
|
+
release_id: z.string().optional().describe('Release plan;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
241
241
|
version_report: z.string().optional().describe('Found version, enum query'),
|
|
242
242
|
version_test: z.string().optional().describe('Verify version'),
|
|
243
243
|
version_fix: z.string().optional().describe('Fix version'),
|
|
@@ -282,8 +282,8 @@ export const bugTools = [
|
|
|
282
282
|
description: '获取缺陷变更历史',
|
|
283
283
|
inputSchema: z.object({
|
|
284
284
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
285
|
-
id: z.string().optional().describe('变更记录ID,支持多ID
|
|
286
|
-
bug_id: z.string().optional().describe('缺陷ID'),
|
|
285
|
+
id: z.string().optional().describe('变更记录ID,支持多ID查询;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
286
|
+
bug_id: z.string().optional().describe('缺陷ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
287
287
|
field: z.string().optional().describe('变更字段'),
|
|
288
288
|
value_before: z.string().optional().describe('变更前值'),
|
|
289
289
|
value_after: z.string().optional().describe('变更后值'),
|
|
@@ -312,7 +312,7 @@ export const bugTools = [
|
|
|
312
312
|
description: '获取缺陷变更次数',
|
|
313
313
|
inputSchema: z.object({
|
|
314
314
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
315
|
-
bug_id: z.string().optional().describe('缺陷ID'),
|
|
315
|
+
bug_id: z.string().optional().describe('缺陷ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
316
316
|
field: z.string().optional().describe('变更字段'),
|
|
317
317
|
user: z.string().optional().describe('变更人'),
|
|
318
318
|
created: z.string().optional().describe('创建时间'),
|
|
@@ -441,10 +441,10 @@ export const bugTools = [
|
|
|
441
441
|
description: '复制缺陷',
|
|
442
442
|
inputSchema: z.object({
|
|
443
443
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
444
|
-
id: z.string().describe('要复制的缺陷ID (必填)'),
|
|
444
|
+
id: z.string().describe('要复制的缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
445
445
|
title: z.string().optional().describe('新缺陷标题(默认为原标题)'),
|
|
446
446
|
current_owner: z.string().optional().describe('处理人'),
|
|
447
|
-
iteration_id: z.string().optional().describe('迭代ID'),
|
|
447
|
+
iteration_id: z.string().optional().describe('迭代ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
448
448
|
copy_attachments: z.number().optional().describe('是否复制附件,值=1复制'),
|
|
449
449
|
copy_comments: z.number().optional().describe('是否复制评论,值=1复制'),
|
|
450
450
|
}),
|
|
@@ -467,7 +467,7 @@ export const bugTools = [
|
|
|
467
467
|
description: '获取缺陷关联关系',
|
|
468
468
|
inputSchema: z.object({
|
|
469
469
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
470
|
-
bug_id: z.string().describe('缺陷ID (必填)'),
|
|
470
|
+
bug_id: z.string().describe('缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
471
471
|
}),
|
|
472
472
|
handler: async (client, params) => {
|
|
473
473
|
const workspaceId = params.workspace_id ?? TapdClient.getDefaultWorkspaceId();
|
|
@@ -487,8 +487,8 @@ export const bugTools = [
|
|
|
487
487
|
description: '关联缺陷',
|
|
488
488
|
inputSchema: z.object({
|
|
489
489
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
490
|
-
bug_id: z.string().describe('主缺陷ID (必填)'),
|
|
491
|
-
link_bug_id: z.string().describe('关联缺陷ID (必填)'),
|
|
490
|
+
bug_id: z.string().describe('主缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
491
|
+
link_bug_id: z.string().describe('关联缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
492
492
|
link_type: z.string().optional().describe('关联类型(前置/后置等)'),
|
|
493
493
|
}),
|
|
494
494
|
handler: async (client, params) => {
|
|
@@ -510,8 +510,8 @@ export const bugTools = [
|
|
|
510
510
|
description: '取消关联缺陷',
|
|
511
511
|
inputSchema: z.object({
|
|
512
512
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
513
|
-
bug_id: z.string().describe('主缺陷ID (必填)'),
|
|
514
|
-
link_bug_id: z.string().describe('要取消关联的缺陷ID (必填)'),
|
|
513
|
+
bug_id: z.string().describe('主缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
514
|
+
link_bug_id: z.string().describe('要取消关联的缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
515
515
|
}),
|
|
516
516
|
handler: async (client, params) => {
|
|
517
517
|
const workspaceId = params.workspace_id ?? TapdClient.getDefaultWorkspaceId();
|
|
@@ -532,7 +532,7 @@ export const bugTools = [
|
|
|
532
532
|
description: '获取缺陷关联需求',
|
|
533
533
|
inputSchema: z.object({
|
|
534
534
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
535
|
-
bug_id: z.string().describe('缺陷ID (必填)'),
|
|
535
|
+
bug_id: z.string().describe('缺陷ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
536
536
|
}),
|
|
537
537
|
handler: async (client, params) => {
|
|
538
538
|
const workspaceId = params.workspace_id ?? TapdClient.getDefaultWorkspaceId();
|
|
@@ -553,7 +553,7 @@ export const bugTools = [
|
|
|
553
553
|
description: '获取视图缺陷列表',
|
|
554
554
|
inputSchema: z.object({
|
|
555
555
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
556
|
-
view_conf_id: z.string().describe('视图配置ID (必填)'),
|
|
556
|
+
view_conf_id: z.string().describe('视图配置ID (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
557
557
|
limit: z.number().optional().describe('返回数量,默认30,最大200'),
|
|
558
558
|
page: z.number().optional().describe('页码,默认1'),
|
|
559
559
|
fields: z.string().optional().describe('返回字段'),
|
|
@@ -571,7 +571,7 @@ export const bugTools = [
|
|
|
571
571
|
description: '获取回收站缺陷',
|
|
572
572
|
inputSchema: z.object({
|
|
573
573
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
574
|
-
id: z.string().optional().describe('缺陷ID'),
|
|
574
|
+
id: z.string().optional().describe('缺陷ID;必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
575
575
|
title: z.string().optional().describe('标题'),
|
|
576
576
|
current_owner: z.string().optional().describe('处理人'),
|
|
577
577
|
reporter: z.string().optional().describe('创建人'),
|
|
@@ -600,7 +600,7 @@ export const bugTools = [
|
|
|
600
600
|
description: '转换缺陷ID为queryToken',
|
|
601
601
|
inputSchema: z.object({
|
|
602
602
|
workspace_id: z.number().optional().describe('项目ID(可省略,使用默认配置)'),
|
|
603
|
-
ids: z.string().describe('缺陷ID列表,逗号分隔 (必填)'),
|
|
603
|
+
ids: z.string().describe('缺陷ID列表,逗号分隔 (必填);必须以字符串(带引号)传递,禁止传数值,20 位 ID 超出 JS 安全整数范围会丢精度'),
|
|
604
604
|
}),
|
|
605
605
|
handler: async (client, params) => {
|
|
606
606
|
const workspaceId = params.workspace_id ?? TapdClient.getDefaultWorkspaceId();
|