@jhl8041/dooray-mcp 0.1.0
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/.claude/settings.local.json +9 -0
- package/.serena/project.yml +84 -0
- package/CLAUDE.md +119 -0
- package/README.md +82 -0
- package/dist/api/client.d.ts +70 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +186 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/common.d.ts +14 -0
- package/dist/api/common.d.ts.map +1 -0
- package/dist/api/common.js +25 -0
- package/dist/api/common.js.map +1 -0
- package/dist/api/projects.d.ts +83 -0
- package/dist/api/projects.d.ts.map +1 -0
- package/dist/api/projects.js +300 -0
- package/dist/api/projects.js.map +1 -0
- package/dist/api/wiki.d.ts +38 -0
- package/dist/api/wiki.d.ts.map +1 -0
- package/dist/api/wiki.js +95 -0
- package/dist/api/wiki.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +227 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/common/get-my-member-info.d.ts +29 -0
- package/dist/tools/common/get-my-member-info.d.ts.map +1 -0
- package/dist/tools/common/get-my-member-info.js +95 -0
- package/dist/tools/common/get-my-member-info.js.map +1 -0
- package/dist/tools/projects/create-task-comment.d.ts +92 -0
- package/dist/tools/projects/create-task-comment.d.ts.map +1 -0
- package/dist/tools/projects/create-task-comment.js +171 -0
- package/dist/tools/projects/create-task-comment.js.map +1 -0
- package/dist/tools/projects/create-task.d.ts +191 -0
- package/dist/tools/projects/create-task.d.ts.map +1 -0
- package/dist/tools/projects/create-task.js +217 -0
- package/dist/tools/projects/create-task.js.map +1 -0
- package/dist/tools/projects/get-milestone-list.d.ts +49 -0
- package/dist/tools/projects/get-milestone-list.d.ts.map +1 -0
- package/dist/tools/projects/get-milestone-list.js +112 -0
- package/dist/tools/projects/get-milestone-list.js.map +1 -0
- package/dist/tools/projects/get-project-list.d.ts +50 -0
- package/dist/tools/projects/get-project-list.d.ts.map +1 -0
- package/dist/tools/projects/get-project-list.js +113 -0
- package/dist/tools/projects/get-project-list.js.map +1 -0
- package/dist/tools/projects/get-project-member-group-list.d.ts +55 -0
- package/dist/tools/projects/get-project-member-group-list.d.ts.map +1 -0
- package/dist/tools/projects/get-project-member-group-list.js +127 -0
- package/dist/tools/projects/get-project-member-group-list.js.map +1 -0
- package/dist/tools/projects/get-project-member-list.d.ts +66 -0
- package/dist/tools/projects/get-project-member-list.d.ts.map +1 -0
- package/dist/tools/projects/get-project-member-list.js +159 -0
- package/dist/tools/projects/get-project-member-list.js.map +1 -0
- package/dist/tools/projects/get-project-template-list.d.ts +55 -0
- package/dist/tools/projects/get-project-template-list.d.ts.map +1 -0
- package/dist/tools/projects/get-project-template-list.js +127 -0
- package/dist/tools/projects/get-project-template-list.js.map +1 -0
- package/dist/tools/projects/get-project-template.d.ts +48 -0
- package/dist/tools/projects/get-project-template.d.ts.map +1 -0
- package/dist/tools/projects/get-project-template.js +132 -0
- package/dist/tools/projects/get-project-template.js.map +1 -0
- package/dist/tools/projects/get-project-workflow-list.d.ts +41 -0
- package/dist/tools/projects/get-project-workflow-list.d.ts.map +1 -0
- package/dist/tools/projects/get-project-workflow-list.js +107 -0
- package/dist/tools/projects/get-project-workflow-list.js.map +1 -0
- package/dist/tools/projects/get-project.d.ts +41 -0
- package/dist/tools/projects/get-project.d.ts.map +1 -0
- package/dist/tools/projects/get-project.js +110 -0
- package/dist/tools/projects/get-project.js.map +1 -0
- package/dist/tools/projects/get-tag-list.d.ts +55 -0
- package/dist/tools/projects/get-tag-list.d.ts.map +1 -0
- package/dist/tools/projects/get-tag-list.js +145 -0
- package/dist/tools/projects/get-tag-list.js.map +1 -0
- package/dist/tools/projects/get-task-comment-list.d.ts +63 -0
- package/dist/tools/projects/get-task-comment-list.d.ts.map +1 -0
- package/dist/tools/projects/get-task-comment-list.js +136 -0
- package/dist/tools/projects/get-task-comment-list.js.map +1 -0
- package/dist/tools/projects/get-task-list.d.ts +184 -0
- package/dist/tools/projects/get-task-list.d.ts.map +1 -0
- package/dist/tools/projects/get-task-list.js +257 -0
- package/dist/tools/projects/get-task-list.js.map +1 -0
- package/dist/tools/projects/get-task.d.ts +48 -0
- package/dist/tools/projects/get-task.d.ts.map +1 -0
- package/dist/tools/projects/get-task.js +130 -0
- package/dist/tools/projects/get-task.js.map +1 -0
- package/dist/tools/projects/update-task-comment.d.ts +92 -0
- package/dist/tools/projects/update-task-comment.d.ts.map +1 -0
- package/dist/tools/projects/update-task-comment.js +176 -0
- package/dist/tools/projects/update-task-comment.js.map +1 -0
- package/dist/tools/projects/update-task.d.ts +196 -0
- package/dist/tools/projects/update-task.d.ts.map +1 -0
- package/dist/tools/projects/update-task.js +227 -0
- package/dist/tools/projects/update-task.js.map +1 -0
- package/dist/tools/wiki/create-wiki-page.d.ts +89 -0
- package/dist/tools/wiki/create-wiki-page.d.ts.map +1 -0
- package/dist/tools/wiki/create-wiki-page.js +142 -0
- package/dist/tools/wiki/create-wiki-page.js.map +1 -0
- package/dist/tools/wiki/get-wiki-list.d.ts +58 -0
- package/dist/tools/wiki/get-wiki-list.d.ts.map +1 -0
- package/dist/tools/wiki/get-wiki-list.js +118 -0
- package/dist/tools/wiki/get-wiki-list.js.map +1 -0
- package/dist/tools/wiki/get-wiki-page-list.d.ts +65 -0
- package/dist/tools/wiki/get-wiki-page-list.d.ts.map +1 -0
- package/dist/tools/wiki/get-wiki-page-list.js +125 -0
- package/dist/tools/wiki/get-wiki-page-list.js.map +1 -0
- package/dist/tools/wiki/get-wiki-page.d.ts +48 -0
- package/dist/tools/wiki/get-wiki-page.d.ts.map +1 -0
- package/dist/tools/wiki/get-wiki-page.js +100 -0
- package/dist/tools/wiki/get-wiki-page.js.map +1 -0
- package/dist/tools/wiki/update-wiki-page.d.ts +89 -0
- package/dist/tools/wiki/update-wiki-page.d.ts.map +1 -0
- package/dist/tools/wiki/update-wiki-page.js +140 -0
- package/dist/tools/wiki/update-wiki-page.js.map +1 -0
- package/dist/types/config.d.ts +18 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +6 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/dooray-api.d.ts +387 -0
- package/dist/types/dooray-api.d.ts.map +1 -0
- package/dist/types/dooray-api.js +7 -0
- package/dist/types/dooray-api.js.map +1 -0
- package/dist/utils/errors.d.ts +28 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +60 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/logger.d.ts +22 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +50 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/member-transform.d.ts +20 -0
- package/dist/utils/member-transform.d.ts.map +1 -0
- package/dist/utils/member-transform.js +48 -0
- package/dist/utils/member-transform.js.map +1 -0
- package/dist/utils/response-filters.d.ts +121 -0
- package/dist/utils/response-filters.d.ts.map +1 -0
- package/dist/utils/response-filters.js +166 -0
- package/dist/utils/response-filters.js.map +1 -0
- package/dooray-mcp.iml +8 -0
- package/package.json +54 -0
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Get Task List Tool
|
|
4
|
+
* Get list of tasks with filters
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.getTaskListTool = exports.getTaskListSchema = void 0;
|
|
41
|
+
exports.getTaskListHandler = getTaskListHandler;
|
|
42
|
+
const zod_1 = require("zod");
|
|
43
|
+
const projectsApi = __importStar(require("../../api/projects.js"));
|
|
44
|
+
const errors_js_1 = require("../../utils/errors.js");
|
|
45
|
+
const response_filters_js_1 = require("../../utils/response-filters.js");
|
|
46
|
+
exports.getTaskListSchema = zod_1.z.object({
|
|
47
|
+
projectId: zod_1.z.string().describe('Project ID (required)'),
|
|
48
|
+
// Member filters
|
|
49
|
+
fromEmailAddress: zod_1.z.string().optional().describe('Filter by creator email address'),
|
|
50
|
+
fromMemberIds: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by creator member IDs (organizationMemberId)'),
|
|
51
|
+
toMemberIds: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by assignee member IDs (organizationMemberId)'),
|
|
52
|
+
ccMemberIds: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by CC member IDs (organizationMemberId)'),
|
|
53
|
+
// Task filters
|
|
54
|
+
tagIds: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by tag IDs'),
|
|
55
|
+
parentPostId: zod_1.z.string().optional().describe('Filter by parent post ID (get subtasks)'),
|
|
56
|
+
postNumber: zod_1.z.number().optional().describe('Filter by specific task number'),
|
|
57
|
+
postWorkflowClasses: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by workflow classes: backlog, registered, working, closed'),
|
|
58
|
+
postWorkflowIds: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by workflow IDs defined in the project'),
|
|
59
|
+
milestoneIds: zod_1.z.array(zod_1.z.string()).optional().describe('Filter by milestone IDs'),
|
|
60
|
+
subjects: zod_1.z.string().optional().describe('Filter by task subject (title)'),
|
|
61
|
+
// Date filters (supports: today, thisweek, prev-Nd, next-Nd, or ISO8601 range like "2021-01-01T00:00:00+09:00~2021-01-10T00:00:00+09:00")
|
|
62
|
+
createdAt: zod_1.z.string().optional().describe('Filter by creation date (today, thisweek, prev-7d, next-7d, or ISO8601 range)'),
|
|
63
|
+
updatedAt: zod_1.z.string().optional().describe('Filter by update date (today, thisweek, prev-7d, next-7d, or ISO8601 range)'),
|
|
64
|
+
dueAt: zod_1.z.string().optional().describe('Filter by due date (today, thisweek, prev-7d, next-7d, or ISO8601 range)'),
|
|
65
|
+
// Sorting
|
|
66
|
+
order: zod_1.z.string().optional().default('-postUpdatedAt').describe('Sort order: postDueAt, postUpdatedAt, createdAt (prefix with - for descending, e.g., -createdAt). Default: -postUpdatedAt (most recently updated first)'),
|
|
67
|
+
// Pagination
|
|
68
|
+
page: zod_1.z.number().min(0).optional().describe('Page number (default: 0)'),
|
|
69
|
+
size: zod_1.z.number().min(1).max(100).optional().describe('Items per page (default: 20, max: 100)'),
|
|
70
|
+
});
|
|
71
|
+
async function getTaskListHandler(args) {
|
|
72
|
+
try {
|
|
73
|
+
const result = await projectsApi.getTasks({
|
|
74
|
+
projectId: args.projectId,
|
|
75
|
+
fromEmailAddress: args.fromEmailAddress,
|
|
76
|
+
fromMemberIds: args.fromMemberIds,
|
|
77
|
+
toMemberIds: args.toMemberIds,
|
|
78
|
+
ccMemberIds: args.ccMemberIds,
|
|
79
|
+
tagIds: args.tagIds,
|
|
80
|
+
parentPostId: args.parentPostId,
|
|
81
|
+
postNumber: args.postNumber,
|
|
82
|
+
postWorkflowClasses: args.postWorkflowClasses,
|
|
83
|
+
postWorkflowIds: args.postWorkflowIds,
|
|
84
|
+
milestoneIds: args.milestoneIds,
|
|
85
|
+
subjects: args.subjects,
|
|
86
|
+
createdAt: args.createdAt,
|
|
87
|
+
updatedAt: args.updatedAt,
|
|
88
|
+
dueAt: args.dueAt,
|
|
89
|
+
order: args.order,
|
|
90
|
+
page: args.page,
|
|
91
|
+
size: args.size,
|
|
92
|
+
});
|
|
93
|
+
// Filter to compact response to reduce token usage
|
|
94
|
+
const compactResult = (0, response_filters_js_1.filterPaginatedResponse)(result, response_filters_js_1.filterTaskForList);
|
|
95
|
+
return {
|
|
96
|
+
content: [
|
|
97
|
+
{
|
|
98
|
+
type: 'text',
|
|
99
|
+
text: JSON.stringify(compactResult, null, 2),
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
return {
|
|
106
|
+
content: [
|
|
107
|
+
{
|
|
108
|
+
type: 'text',
|
|
109
|
+
text: `Error: ${(0, errors_js_1.formatError)(error)}`,
|
|
110
|
+
},
|
|
111
|
+
],
|
|
112
|
+
isError: true,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
exports.getTaskListTool = {
|
|
117
|
+
name: 'get-task-list',
|
|
118
|
+
description: `Get list of tasks in a Dooray project with powerful filtering and sorting.
|
|
119
|
+
|
|
120
|
+
**IMPORTANT**: projectId is REQUIRED. This tool fetches tasks from a specific project.
|
|
121
|
+
|
|
122
|
+
**Note**: Returns compact response with essential fields only. For complete task details, use get-task.
|
|
123
|
+
|
|
124
|
+
**URL Pattern Recognition**:
|
|
125
|
+
When given a Dooray URL like "https://nhnent.dooray.com/task/PROJECT_ID" or "https://nhnent.dooray.com/task/PROJECT_ID/TASK_ID", extract the PROJECT_ID (the first numeric ID after "/task/") and use it as the projectId parameter. When a URL is provided, use get-project for project info instead of get-project-list.
|
|
126
|
+
|
|
127
|
+
**Member ID Filters** (use organizationMemberId from get-my-member-info):
|
|
128
|
+
- toMemberIds: Tasks assigned to specific members
|
|
129
|
+
- ccMemberIds: Tasks where members are in CC
|
|
130
|
+
- fromMemberIds: Tasks created by specific members
|
|
131
|
+
|
|
132
|
+
**Workflow Filters**:
|
|
133
|
+
- postWorkflowClasses: ["backlog", "registered", "working", "closed"]
|
|
134
|
+
- postWorkflowIds: Project-specific workflow IDs
|
|
135
|
+
|
|
136
|
+
**Date Filters** (flexible patterns):
|
|
137
|
+
- "today" - Today's tasks
|
|
138
|
+
- "thisweek" - This week's tasks
|
|
139
|
+
- "prev-7d" - Last 7 days
|
|
140
|
+
- "next-7d" - Next 7 days
|
|
141
|
+
- ISO8601 range: "2021-01-01T00:00:00+09:00~2021-01-10T00:00:00+09:00"
|
|
142
|
+
|
|
143
|
+
**Examples**:
|
|
144
|
+
1. All tasks in project:
|
|
145
|
+
{"projectId": "123456"}
|
|
146
|
+
|
|
147
|
+
2. Tasks assigned to me:
|
|
148
|
+
{"projectId": "123456", "toMemberIds": ["my-org-member-id"]}
|
|
149
|
+
|
|
150
|
+
3. Tasks in "working" status:
|
|
151
|
+
{"projectId": "123456", "postWorkflowClasses": ["working"]}
|
|
152
|
+
|
|
153
|
+
4. Tasks due today:
|
|
154
|
+
{"projectId": "123456", "dueAt": "today"}
|
|
155
|
+
|
|
156
|
+
5. Recent tasks (sorted by update time):
|
|
157
|
+
{"projectId": "123456", "updatedAt": "prev-7d", "order": "-postUpdatedAt"}
|
|
158
|
+
|
|
159
|
+
6. Tasks with specific milestone and tags:
|
|
160
|
+
{"projectId": "123456", "milestoneIds": ["milestone123"], "tagIds": ["tag456"]}
|
|
161
|
+
|
|
162
|
+
**Sorting**:
|
|
163
|
+
- Default: Tasks are sorted by most recently updated first (-postUpdatedAt)
|
|
164
|
+
- Custom: Use order parameter with: postDueAt, postUpdatedAt, createdAt
|
|
165
|
+
- Prefix with - for descending (e.g., "-createdAt")
|
|
166
|
+
|
|
167
|
+
Returns paginated task list with id, number, subject, status, priority, dueDate, assignees, tags, and milestone.`,
|
|
168
|
+
inputSchema: {
|
|
169
|
+
type: 'object',
|
|
170
|
+
properties: {
|
|
171
|
+
projectId: {
|
|
172
|
+
type: 'string',
|
|
173
|
+
description: 'Project ID (REQUIRED)',
|
|
174
|
+
},
|
|
175
|
+
fromEmailAddress: {
|
|
176
|
+
type: 'string',
|
|
177
|
+
description: 'Filter by creator email address',
|
|
178
|
+
},
|
|
179
|
+
fromMemberIds: {
|
|
180
|
+
type: 'array',
|
|
181
|
+
items: { type: 'string' },
|
|
182
|
+
description: 'Filter by creator member IDs',
|
|
183
|
+
},
|
|
184
|
+
toMemberIds: {
|
|
185
|
+
type: 'array',
|
|
186
|
+
items: { type: 'string' },
|
|
187
|
+
description: 'Filter by assignee member IDs (organizationMemberId)',
|
|
188
|
+
},
|
|
189
|
+
ccMemberIds: {
|
|
190
|
+
type: 'array',
|
|
191
|
+
items: { type: 'string' },
|
|
192
|
+
description: 'Filter by CC member IDs',
|
|
193
|
+
},
|
|
194
|
+
tagIds: {
|
|
195
|
+
type: 'array',
|
|
196
|
+
items: { type: 'string' },
|
|
197
|
+
description: 'Filter by tag IDs',
|
|
198
|
+
},
|
|
199
|
+
parentPostId: {
|
|
200
|
+
type: 'string',
|
|
201
|
+
description: 'Filter by parent post ID (get subtasks)',
|
|
202
|
+
},
|
|
203
|
+
postNumber: {
|
|
204
|
+
type: 'number',
|
|
205
|
+
description: 'Filter by specific task number',
|
|
206
|
+
},
|
|
207
|
+
postWorkflowClasses: {
|
|
208
|
+
type: 'array',
|
|
209
|
+
items: { type: 'string' },
|
|
210
|
+
description: 'Filter by workflow classes: backlog, registered, working, closed',
|
|
211
|
+
},
|
|
212
|
+
postWorkflowIds: {
|
|
213
|
+
type: 'array',
|
|
214
|
+
items: { type: 'string' },
|
|
215
|
+
description: 'Filter by workflow IDs',
|
|
216
|
+
},
|
|
217
|
+
milestoneIds: {
|
|
218
|
+
type: 'array',
|
|
219
|
+
items: { type: 'string' },
|
|
220
|
+
description: 'Filter by milestone IDs',
|
|
221
|
+
},
|
|
222
|
+
subjects: {
|
|
223
|
+
type: 'string',
|
|
224
|
+
description: 'Filter by task subject',
|
|
225
|
+
},
|
|
226
|
+
createdAt: {
|
|
227
|
+
type: 'string',
|
|
228
|
+
description: 'Filter by creation date (today, thisweek, prev-7d, next-7d, or ISO8601 range)',
|
|
229
|
+
},
|
|
230
|
+
updatedAt: {
|
|
231
|
+
type: 'string',
|
|
232
|
+
description: 'Filter by update date (today, thisweek, prev-7d, next-7d, or ISO8601 range)',
|
|
233
|
+
},
|
|
234
|
+
dueAt: {
|
|
235
|
+
type: 'string',
|
|
236
|
+
description: 'Filter by due date (today, thisweek, prev-7d, next-7d, or ISO8601 range)',
|
|
237
|
+
},
|
|
238
|
+
order: {
|
|
239
|
+
type: 'string',
|
|
240
|
+
description: 'Sort order: postDueAt, postUpdatedAt, createdAt (prefix with - for descending)',
|
|
241
|
+
},
|
|
242
|
+
page: {
|
|
243
|
+
type: 'number',
|
|
244
|
+
description: 'Page number (default: 0)',
|
|
245
|
+
minimum: 0,
|
|
246
|
+
},
|
|
247
|
+
size: {
|
|
248
|
+
type: 'number',
|
|
249
|
+
description: 'Items per page (default: 20, max: 100)',
|
|
250
|
+
minimum: 1,
|
|
251
|
+
maximum: 100,
|
|
252
|
+
},
|
|
253
|
+
},
|
|
254
|
+
required: ['projectId'],
|
|
255
|
+
},
|
|
256
|
+
};
|
|
257
|
+
//# sourceMappingURL=get-task-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-task-list.js","sourceRoot":"","sources":["../../../src/tools/projects/get-task-list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get Task Tool
|
|
3
|
+
* Get detailed information about a specific task
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export declare const getTaskSchema: z.ZodObject<{
|
|
7
|
+
taskId: z.ZodString;
|
|
8
|
+
projectId: z.ZodOptional<z.ZodString>;
|
|
9
|
+
}, "strip", z.ZodTypeAny, {
|
|
10
|
+
taskId: string;
|
|
11
|
+
projectId?: string | undefined;
|
|
12
|
+
}, {
|
|
13
|
+
taskId: string;
|
|
14
|
+
projectId?: string | undefined;
|
|
15
|
+
}>;
|
|
16
|
+
export type GetTaskInput = z.infer<typeof getTaskSchema>;
|
|
17
|
+
export declare function getTaskHandler(args: GetTaskInput): Promise<{
|
|
18
|
+
content: {
|
|
19
|
+
type: string;
|
|
20
|
+
text: string;
|
|
21
|
+
}[];
|
|
22
|
+
isError?: undefined;
|
|
23
|
+
} | {
|
|
24
|
+
content: {
|
|
25
|
+
type: string;
|
|
26
|
+
text: string;
|
|
27
|
+
}[];
|
|
28
|
+
isError: boolean;
|
|
29
|
+
}>;
|
|
30
|
+
export declare const getTaskTool: {
|
|
31
|
+
name: string;
|
|
32
|
+
description: string;
|
|
33
|
+
inputSchema: {
|
|
34
|
+
type: string;
|
|
35
|
+
properties: {
|
|
36
|
+
taskId: {
|
|
37
|
+
type: string;
|
|
38
|
+
description: string;
|
|
39
|
+
};
|
|
40
|
+
projectId: {
|
|
41
|
+
type: string;
|
|
42
|
+
description: string;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
required: string[];
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=get-task.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-task.d.ts","sourceRoot":"","sources":["../../../src/tools/projects/get-task.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,aAAa;;;;;;;;;EAGxB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEzD,wBAAsB,cAAc,CAAC,IAAI,EAAE,YAAY;;;;;;;;;;;;GAuBtD;AAED,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;CAwDvB,CAAC"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Get Task Tool
|
|
4
|
+
* Get detailed information about a specific task
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.getTaskTool = exports.getTaskSchema = void 0;
|
|
41
|
+
exports.getTaskHandler = getTaskHandler;
|
|
42
|
+
const zod_1 = require("zod");
|
|
43
|
+
const projectsApi = __importStar(require("../../api/projects.js"));
|
|
44
|
+
const errors_js_1 = require("../../utils/errors.js");
|
|
45
|
+
exports.getTaskSchema = zod_1.z.object({
|
|
46
|
+
taskId: zod_1.z.string().describe('Task ID (unique identifier)'),
|
|
47
|
+
projectId: zod_1.z.string().optional().describe('Project ID (optional)'),
|
|
48
|
+
});
|
|
49
|
+
async function getTaskHandler(args) {
|
|
50
|
+
try {
|
|
51
|
+
const result = await projectsApi.getTaskDetails(args.taskId, args.projectId);
|
|
52
|
+
return {
|
|
53
|
+
content: [
|
|
54
|
+
{
|
|
55
|
+
type: 'text',
|
|
56
|
+
text: JSON.stringify(result, null, 2),
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
return {
|
|
63
|
+
content: [
|
|
64
|
+
{
|
|
65
|
+
type: 'text',
|
|
66
|
+
text: `Error: ${(0, errors_js_1.formatError)(error)}`,
|
|
67
|
+
},
|
|
68
|
+
],
|
|
69
|
+
isError: true,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.getTaskTool = {
|
|
74
|
+
name: 'get-task',
|
|
75
|
+
description: `Get detailed information about a specific task.
|
|
76
|
+
|
|
77
|
+
This tool retrieves complete details of a task including its full body content, attachments, workflow status, assignees, and all metadata.
|
|
78
|
+
|
|
79
|
+
**URL Pattern Recognition - Two formats supported**:
|
|
80
|
+
|
|
81
|
+
1. **Project-scoped URL**: "https://nhnent.dooray.com/task/PROJECT_ID/TASK_ID"
|
|
82
|
+
- Extract the first numeric ID after "/task/" as projectId (optional)
|
|
83
|
+
- Extract the second numeric ID as taskId (required)
|
|
84
|
+
- Example: "https://nhnent.dooray.com/task/1769381697328002548/4206132384174602537"
|
|
85
|
+
→ {"taskId": "4206132384174602537", "projectId": "1769381697328002548"}
|
|
86
|
+
|
|
87
|
+
2. **Task-only URL**: "https://nhnent.dooray.com/project/tasks/TASK_ID"
|
|
88
|
+
- Extract the numeric ID after "/tasks/" as taskId
|
|
89
|
+
- Example: "https://nhnent.dooray.com/project/tasks/4206132384174602537"
|
|
90
|
+
→ {"taskId": "4206132384174602537"}
|
|
91
|
+
|
|
92
|
+
**IMPORTANT**:
|
|
93
|
+
- **taskId is REQUIRED**, projectId is OPTIONAL
|
|
94
|
+
- The taskId is the unique identifier (ID) from the URL, NOT the sequential task number shown in the UI
|
|
95
|
+
- You can fetch task details with just the taskId without knowing the projectId
|
|
96
|
+
- When a specific task URL is provided, use this tool directly instead of calling get-project-list first
|
|
97
|
+
- To find taskId from task descriptions, use get-task-list to search and get task IDs
|
|
98
|
+
|
|
99
|
+
Examples:
|
|
100
|
+
- From URL pattern 1: {"taskId": "4206132384174602537", "projectId": "1769381697328002548"}
|
|
101
|
+
- From URL pattern 2: {"taskId": "4206132384174602537"}
|
|
102
|
+
- Just taskId: {"taskId": "789012345"}
|
|
103
|
+
- With both IDs: {"taskId": "789012345", "projectId": "123456"}
|
|
104
|
+
|
|
105
|
+
**Returns complete task information including:**
|
|
106
|
+
- **Basic info**: id, number, subject, taskNumber (PROJECT-CODE/NUMBER format)
|
|
107
|
+
- **Project**: project object with id and code
|
|
108
|
+
- **Status**: workflowClass (registered/working/closed), workflow (id and name), closed flag, priority
|
|
109
|
+
- **Dates**: createdAt, updatedAt, dueDate, dueDateFlag
|
|
110
|
+
- **Content**: body with mimeType (text/x-markdown or text/html) and content
|
|
111
|
+
- **Hierarchy**: parent task information (id, number, subject) if this is a subtask
|
|
112
|
+
- **People**: users object with from (creator), to (assignees), cc (watchers)
|
|
113
|
+
- **Organization**: milestone (id, name), tags array (id, name)
|
|
114
|
+
- **Files**: files array with attachments (id, name, size)`,
|
|
115
|
+
inputSchema: {
|
|
116
|
+
type: 'object',
|
|
117
|
+
properties: {
|
|
118
|
+
taskId: {
|
|
119
|
+
type: 'string',
|
|
120
|
+
description: 'Task ID (unique identifier, REQUIRED)',
|
|
121
|
+
},
|
|
122
|
+
projectId: {
|
|
123
|
+
type: 'string',
|
|
124
|
+
description: 'Project ID (optional, can be omitted)',
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
required: ['taskId'],
|
|
128
|
+
},
|
|
129
|
+
};
|
|
130
|
+
//# sourceMappingURL=get-task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-task.js","sourceRoot":"","sources":["../../../src/tools/projects/get-task.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaH,wCAuBC;AAlCD,6BAAwB;AACxB,mEAAqD;AACrD,qDAAoD;AAEvC,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAC1D,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CACnE,CAAC,CAAC;AAII,KAAK,UAAU,cAAc,CAAC,IAAkB;IACrD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAE7E,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;iBACtC;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU,IAAA,uBAAW,EAAC,KAAK,CAAC,EAAE;iBACrC;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAEY,QAAA,WAAW,GAAG;IACzB,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DAuC4C;IACzD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uCAAuC;aACrD;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uCAAuC;aACrD;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;CACF,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update Task Comment Tool
|
|
3
|
+
* Update an existing comment on a task
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export declare const updateTaskCommentSchema: z.ZodObject<{
|
|
7
|
+
projectId: z.ZodString;
|
|
8
|
+
taskId: z.ZodString;
|
|
9
|
+
commentId: z.ZodString;
|
|
10
|
+
body: z.ZodOptional<z.ZodObject<{
|
|
11
|
+
content: z.ZodString;
|
|
12
|
+
mimeType: z.ZodEnum<["text/x-markdown", "text/html"]>;
|
|
13
|
+
}, "strip", z.ZodTypeAny, {
|
|
14
|
+
mimeType: "text/x-markdown" | "text/html";
|
|
15
|
+
content: string;
|
|
16
|
+
}, {
|
|
17
|
+
mimeType: "text/x-markdown" | "text/html";
|
|
18
|
+
content: string;
|
|
19
|
+
}>>;
|
|
20
|
+
attachFileIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
21
|
+
}, "strip", z.ZodTypeAny, {
|
|
22
|
+
projectId: string;
|
|
23
|
+
taskId: string;
|
|
24
|
+
commentId: string;
|
|
25
|
+
body?: {
|
|
26
|
+
mimeType: "text/x-markdown" | "text/html";
|
|
27
|
+
content: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
attachFileIds?: string[] | undefined;
|
|
30
|
+
}, {
|
|
31
|
+
projectId: string;
|
|
32
|
+
taskId: string;
|
|
33
|
+
commentId: string;
|
|
34
|
+
body?: {
|
|
35
|
+
mimeType: "text/x-markdown" | "text/html";
|
|
36
|
+
content: string;
|
|
37
|
+
} | undefined;
|
|
38
|
+
attachFileIds?: string[] | undefined;
|
|
39
|
+
}>;
|
|
40
|
+
export type UpdateTaskCommentInput = z.infer<typeof updateTaskCommentSchema>;
|
|
41
|
+
export declare function updateTaskCommentHandler(args: UpdateTaskCommentInput): Promise<string | {
|
|
42
|
+
content: {
|
|
43
|
+
type: string;
|
|
44
|
+
text: string;
|
|
45
|
+
}[];
|
|
46
|
+
}>;
|
|
47
|
+
export declare const updateTaskCommentTool: {
|
|
48
|
+
name: string;
|
|
49
|
+
description: string;
|
|
50
|
+
inputSchema: {
|
|
51
|
+
type: string;
|
|
52
|
+
properties: {
|
|
53
|
+
projectId: {
|
|
54
|
+
type: string;
|
|
55
|
+
description: string;
|
|
56
|
+
};
|
|
57
|
+
taskId: {
|
|
58
|
+
type: string;
|
|
59
|
+
description: string;
|
|
60
|
+
};
|
|
61
|
+
commentId: {
|
|
62
|
+
type: string;
|
|
63
|
+
description: string;
|
|
64
|
+
};
|
|
65
|
+
body: {
|
|
66
|
+
type: string;
|
|
67
|
+
properties: {
|
|
68
|
+
content: {
|
|
69
|
+
type: string;
|
|
70
|
+
description: string;
|
|
71
|
+
};
|
|
72
|
+
mimeType: {
|
|
73
|
+
type: string;
|
|
74
|
+
enum: string[];
|
|
75
|
+
description: string;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
required: string[];
|
|
79
|
+
description: string;
|
|
80
|
+
};
|
|
81
|
+
attachFileIds: {
|
|
82
|
+
type: string;
|
|
83
|
+
items: {
|
|
84
|
+
type: string;
|
|
85
|
+
};
|
|
86
|
+
description: string;
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
required: string[];
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=update-task-comment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-task-comment.d.ts","sourceRoot":"","sources":["../../../src/tools/projects/update-task-comment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMlC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE7E,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,sBAAsB;;;;;GAqB1E;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiGjC,CAAC"}
|