bitrix24-tasks-mcp-server 1.0.1 → 1.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/README.md +52 -0
- package/build/bitrix24/client.d.ts +62 -0
- package/build/bitrix24/client.d.ts.map +1 -1
- package/build/bitrix24/client.js +201 -40
- package/build/bitrix24/client.js.map +1 -1
- package/build/bitrix24/taskFiles.d.ts +9 -0
- package/build/bitrix24/taskFiles.d.ts.map +1 -0
- package/build/bitrix24/taskFiles.js +33 -0
- package/build/bitrix24/taskFiles.js.map +1 -0
- package/build/index.js +1 -1
- package/build/tools/index.d.ts +8 -0
- package/build/tools/index.d.ts.map +1 -1
- package/build/tools/index.js +331 -1
- package/build/tools/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -67,17 +67,69 @@ Required webhook scopes:
|
|
|
67
67
|
- `task`
|
|
68
68
|
- `tasks_extended`
|
|
69
69
|
- `sonet_group`
|
|
70
|
+
- `disk` (required for attaching images/files to tasks)
|
|
71
|
+
|
|
72
|
+
Optional environment variables:
|
|
73
|
+
|
|
74
|
+
- `BITRIX24_DISK_FOLDER_ID` — target folder ID for uploads. If omitted, the webhook user's disk storage root folder is used.
|
|
75
|
+
|
|
76
|
+
## Attaching images and files to tasks
|
|
77
|
+
|
|
78
|
+
Bitrix24 stores task attachments on Disk. The MCP uploads a local file with `disk.folder.uploadfile`, then attaches it to the task with `tasks.task.files.attach` (fallback: `UF_TASK_WEBDAV_FILES` on `tasks.task.update`).
|
|
79
|
+
|
|
80
|
+
Tools:
|
|
81
|
+
|
|
82
|
+
- `bitrix24_attach_files_to_task` — attach one or more local files to an existing task
|
|
83
|
+
- `bitrix24_create_task` — optional `filePaths` array to attach files right after task creation
|
|
84
|
+
|
|
85
|
+
Example MCP call:
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"taskId": "100689",
|
|
90
|
+
"filePaths": ["/absolute/path/to/schema.png"]
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Local development in Cursor (`~/.cursor/mcp.json`):
|
|
95
|
+
|
|
96
|
+
```json
|
|
97
|
+
{
|
|
98
|
+
"mcpServers": {
|
|
99
|
+
"bitrix24": {
|
|
100
|
+
"command": "node",
|
|
101
|
+
"args": ["/Users/ruslan/Project/bitrix24-mcp-server/build/index.js"],
|
|
102
|
+
"env": {
|
|
103
|
+
"BITRIX24_WEBHOOK_URL": "https://your-domain.bitrix24.ru/rest/USER_ID/WEBHOOK_CODE/",
|
|
104
|
+
"BITRIX24_DISK_FOLDER_ID": "1739"
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
```
|
|
70
110
|
|
|
71
111
|
## Available tools
|
|
72
112
|
|
|
73
113
|
### Tasks
|
|
74
114
|
|
|
75
115
|
- `bitrix24_create_task` - Create a new task
|
|
116
|
+
- `bitrix24_create_task` supports optional `checklist` parameter to add checklist items during task creation
|
|
117
|
+
- `bitrix24_create_task` supports optional `parentTaskId` for parent/subtask linkage
|
|
76
118
|
- `bitrix24_get_task` - Get task by ID
|
|
77
119
|
- `bitrix24_list_tasks` - List tasks (by default only tasks of current webhook user)
|
|
78
120
|
- `bitrix24_get_latest_tasks` - Get latest tasks by creation date
|
|
79
121
|
- `bitrix24_get_tasks_from_date_range` - Get tasks created in a date range
|
|
80
122
|
- `bitrix24_update_task` - Update an existing task
|
|
123
|
+
- `bitrix24_update_task` supports `parentTaskId` to change parent linkage
|
|
124
|
+
- `bitrix24_attach_files_to_task` - Upload local files and attach them to a task
|
|
125
|
+
- `bitrix24_create_task` supports optional `filePaths` to attach files during creation
|
|
126
|
+
- `bitrix24_add_task_checklist_item` - Add checklist item to task
|
|
127
|
+
- `bitrix24_list_task_checklist_items` - List checklist items in task
|
|
128
|
+
- `bitrix24_update_task_checklist_item` - Update checklist item in task
|
|
129
|
+
- `bitrix24_delete_task_checklist_item` - Delete checklist item from task
|
|
130
|
+
- `bitrix24_get_task_dependencies` - Get dependency IDs for task (`DEPENDS_ON`)
|
|
131
|
+
- `bitrix24_add_task_dependency` - Create dependency link between tasks
|
|
132
|
+
- `bitrix24_delete_task_dependency` - Remove dependency link between tasks
|
|
81
133
|
|
|
82
134
|
### Projects
|
|
83
135
|
|
|
@@ -5,6 +5,7 @@ export interface BitrixTask {
|
|
|
5
5
|
RESPONSIBLE_ID?: string;
|
|
6
6
|
CREATED_BY?: string;
|
|
7
7
|
GROUP_ID?: string;
|
|
8
|
+
PARENT_ID?: string;
|
|
8
9
|
DEADLINE?: string;
|
|
9
10
|
PRIORITY?: '0' | '1' | '2';
|
|
10
11
|
STATUS?: '1' | '2' | '3' | '4' | '5';
|
|
@@ -13,6 +14,19 @@ export interface BitrixTask {
|
|
|
13
14
|
CHANGED_DATE?: string;
|
|
14
15
|
CLOSED_DATE?: string;
|
|
15
16
|
STATUS_COMPLETE?: string;
|
|
17
|
+
UF_TASK_WEBDAV_FILES?: string[];
|
|
18
|
+
}
|
|
19
|
+
export interface DiskUploadedFile {
|
|
20
|
+
diskObjectId: string;
|
|
21
|
+
fileId?: string;
|
|
22
|
+
name: string;
|
|
23
|
+
downloadUrl?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface TaskFileAttachmentResult {
|
|
26
|
+
filePath: string;
|
|
27
|
+
fileName: string;
|
|
28
|
+
diskObjectId: string;
|
|
29
|
+
attachmentId?: string;
|
|
16
30
|
}
|
|
17
31
|
export interface BitrixProject {
|
|
18
32
|
ID?: string;
|
|
@@ -25,6 +39,20 @@ export interface BitrixProject {
|
|
|
25
39
|
DATE_CREATE?: string;
|
|
26
40
|
DATE_UPDATE?: string;
|
|
27
41
|
}
|
|
42
|
+
export interface BitrixChecklistItem {
|
|
43
|
+
ID?: string;
|
|
44
|
+
TASK_ID?: string;
|
|
45
|
+
PARENT_ID?: string;
|
|
46
|
+
CREATED_BY?: string;
|
|
47
|
+
TITLE?: string;
|
|
48
|
+
SORT_INDEX?: string;
|
|
49
|
+
IS_COMPLETE?: 'Y' | 'N';
|
|
50
|
+
IS_IMPORTANT?: 'Y' | 'N';
|
|
51
|
+
TOGGLED_BY?: string | null;
|
|
52
|
+
TOGGLED_DATE?: string | null;
|
|
53
|
+
MEMBERS?: Record<string, any>;
|
|
54
|
+
ATTACHMENTS?: Record<string, any>;
|
|
55
|
+
}
|
|
28
56
|
export declare class Bitrix24Client {
|
|
29
57
|
private baseUrl;
|
|
30
58
|
private lastRequestTime;
|
|
@@ -32,6 +60,7 @@ export declare class Bitrix24Client {
|
|
|
32
60
|
constructor(webhookUrl?: string);
|
|
33
61
|
private enforceRateLimit;
|
|
34
62
|
private makeRequest;
|
|
63
|
+
private appendFormValue;
|
|
35
64
|
createTask(task: BitrixTask): Promise<string>;
|
|
36
65
|
getTask(id: string): Promise<BitrixTask>;
|
|
37
66
|
updateTask(id: string, task: Partial<BitrixTask>): Promise<boolean>;
|
|
@@ -45,6 +74,39 @@ export declare class Bitrix24Client {
|
|
|
45
74
|
private listTasksDeprecated;
|
|
46
75
|
getLatestTasks(limit?: number): Promise<BitrixTask[]>;
|
|
47
76
|
getTasksFromDateRange(startDate: string, endDate?: string, limit?: number): Promise<BitrixTask[]>;
|
|
77
|
+
addChecklistItem(taskId: string, item: {
|
|
78
|
+
TITLE: string;
|
|
79
|
+
PARENT_ID?: number;
|
|
80
|
+
SORT_INDEX?: number;
|
|
81
|
+
IS_COMPLETE?: 'Y' | 'N';
|
|
82
|
+
IS_IMPORTANT?: 'Y' | 'N';
|
|
83
|
+
}): Promise<string>;
|
|
84
|
+
listChecklistItems(taskId: string, order?: Record<string, 'ASC' | 'DESC'>): Promise<BitrixChecklistItem[]>;
|
|
85
|
+
updateChecklistItem(taskId: string, itemId: string, fields: {
|
|
86
|
+
TITLE?: string;
|
|
87
|
+
PARENT_ID?: number;
|
|
88
|
+
SORT_INDEX?: number;
|
|
89
|
+
IS_COMPLETE?: 'Y' | 'N';
|
|
90
|
+
IS_IMPORTANT?: 'Y' | 'N';
|
|
91
|
+
}): Promise<boolean>;
|
|
92
|
+
deleteChecklistItem(taskId: string, itemId: string): Promise<boolean>;
|
|
93
|
+
getTaskDependencies(taskId: string): Promise<string[]>;
|
|
94
|
+
addTaskDependency(taskIdFrom: string, taskIdTo: string, linkType?: 0 | 1 | 2 | 3): Promise<boolean>;
|
|
95
|
+
deleteTaskDependency(taskIdFrom: string, taskIdTo: string, linkType?: 0 | 1 | 2 | 3): Promise<boolean>;
|
|
96
|
+
resolveUploadFolderId(folderId?: string): Promise<string>;
|
|
97
|
+
uploadFileToDisk(params: {
|
|
98
|
+
folderId?: string;
|
|
99
|
+
fileName: string;
|
|
100
|
+
base64Content: string;
|
|
101
|
+
generateUniqueName?: boolean;
|
|
102
|
+
}): Promise<DiskUploadedFile>;
|
|
103
|
+
attachDiskFileToTask(taskId: string, diskObjectId: string): Promise<string | undefined>;
|
|
104
|
+
private extractWebdavFileTokens;
|
|
105
|
+
attachLocalFileToTask(taskId: string, filePath: string, folderId?: string): Promise<TaskFileAttachmentResult>;
|
|
106
|
+
attachLocalFilesToTask(taskId: string, filePaths: string[], folderId?: string): Promise<{
|
|
107
|
+
attached: TaskFileAttachmentResult[];
|
|
108
|
+
errors: string[];
|
|
109
|
+
}>;
|
|
48
110
|
createProject(project: BitrixProject): Promise<string>;
|
|
49
111
|
getProject(id: string): Promise<BitrixProject | null>;
|
|
50
112
|
updateProject(id: string, project: Partial<BitrixProject>): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/bitrix24/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/bitrix24/client.ts"],"names":[],"mappings":"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"}
|
package/build/bitrix24/client.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import fetch from 'node-fetch';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
+
import { readLocalFileAsBase64, toWebdavFileToken } from './taskFiles.js';
|
|
3
4
|
const BITRIX24_WEBHOOK_URL = process.env.BITRIX24_WEBHOOK_URL ||
|
|
4
5
|
'https://sviluppofranchising.bitrix24.it/rest/27/wwugdez6m774803q/';
|
|
5
6
|
const BitrixResponseSchema = z.object({
|
|
@@ -47,46 +48,7 @@ export class Bitrix24Client {
|
|
|
47
48
|
else {
|
|
48
49
|
const body = new URLSearchParams();
|
|
49
50
|
Object.entries(params).forEach(([key, value]) => {
|
|
50
|
-
|
|
51
|
-
Object.entries(value).forEach(([fieldKey, fieldValue]) => {
|
|
52
|
-
if (Array.isArray(fieldValue)) {
|
|
53
|
-
fieldValue.forEach((item, index) => {
|
|
54
|
-
if (typeof item === 'object' && item !== null) {
|
|
55
|
-
Object.entries(item).forEach(([subKey, subValue]) => {
|
|
56
|
-
body.append(`fields[${fieldKey}][${index}][${subKey}]`, String(subValue));
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
body.append(`fields[${fieldKey}][${index}]`, String(item));
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
else if (fieldValue !== undefined && fieldValue !== null) {
|
|
65
|
-
body.append(`fields[${fieldKey}]`, String(fieldValue));
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
else if (key === 'order' && typeof value === 'object' && value !== null) {
|
|
70
|
-
Object.entries(value).forEach(([orderKey, orderValue]) => {
|
|
71
|
-
body.append(`order[${orderKey}]`, String(orderValue));
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
else if (key === 'filter' && typeof value === 'object' && value !== null) {
|
|
75
|
-
Object.entries(value).forEach(([filterKey, filterValue]) => {
|
|
76
|
-
body.append(`filter[${filterKey}]`, String(filterValue));
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
else if (Array.isArray(value)) {
|
|
80
|
-
value.forEach((item) => {
|
|
81
|
-
body.append(`${key}[]`, String(item));
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
else if (typeof value === 'object' && value !== null) {
|
|
85
|
-
body.append(key, JSON.stringify(value));
|
|
86
|
-
}
|
|
87
|
-
else if (value !== undefined && value !== null) {
|
|
88
|
-
body.append(key, String(value));
|
|
89
|
-
}
|
|
51
|
+
this.appendFormValue(body, key, value);
|
|
90
52
|
});
|
|
91
53
|
response = await fetch(url, {
|
|
92
54
|
method: 'POST',
|
|
@@ -114,6 +76,29 @@ export class Bitrix24Client {
|
|
|
114
76
|
throw error;
|
|
115
77
|
}
|
|
116
78
|
}
|
|
79
|
+
appendFormValue(body, key, value) {
|
|
80
|
+
if (value === undefined || value === null) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (Array.isArray(value)) {
|
|
84
|
+
value.forEach((item, index) => {
|
|
85
|
+
if (typeof item === 'object' && item !== null) {
|
|
86
|
+
this.appendFormValue(body, `${key}[${index}]`, item);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
body.append(`${key}[]`, String(item));
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (typeof value === 'object') {
|
|
95
|
+
Object.entries(value).forEach(([nestedKey, nestedValue]) => {
|
|
96
|
+
this.appendFormValue(body, `${key}[${nestedKey}]`, nestedValue);
|
|
97
|
+
});
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
body.append(key, String(value));
|
|
101
|
+
}
|
|
117
102
|
// Task Methods
|
|
118
103
|
async createTask(task) {
|
|
119
104
|
const result = await this.makeRequest('tasks.task.add', { fields: task });
|
|
@@ -180,6 +165,7 @@ export class Bitrix24Client {
|
|
|
180
165
|
RESPONSIBLE_ID: task.RESPONSIBLE_ID ?? task.responsibleId,
|
|
181
166
|
CREATED_BY: task.CREATED_BY ?? task.createdBy,
|
|
182
167
|
GROUP_ID: task.GROUP_ID ?? task.groupId,
|
|
168
|
+
PARENT_ID: task.PARENT_ID ?? task.parentId,
|
|
183
169
|
DEADLINE: task.DEADLINE ?? task.deadline,
|
|
184
170
|
PRIORITY: task.PRIORITY ?? task.priority,
|
|
185
171
|
STATUS: task.STATUS ?? task.status,
|
|
@@ -239,6 +225,168 @@ export class Bitrix24Client {
|
|
|
239
225
|
});
|
|
240
226
|
return tasks.slice(0, limit);
|
|
241
227
|
}
|
|
228
|
+
async addChecklistItem(taskId, item) {
|
|
229
|
+
const result = await this.makeRequest('task.checklistitem.add', {
|
|
230
|
+
TASKID: Number(taskId),
|
|
231
|
+
FIELDS: item
|
|
232
|
+
});
|
|
233
|
+
if (typeof result === 'number' || typeof result === 'string') {
|
|
234
|
+
return String(result);
|
|
235
|
+
}
|
|
236
|
+
return String(result?.ID || result?.id || '');
|
|
237
|
+
}
|
|
238
|
+
async listChecklistItems(taskId, order) {
|
|
239
|
+
const payload = { TASKID: Number(taskId) };
|
|
240
|
+
if (order) {
|
|
241
|
+
payload.ORDER = order;
|
|
242
|
+
}
|
|
243
|
+
const result = await this.makeRequest('task.checklistitem.getlist', payload);
|
|
244
|
+
return Array.isArray(result) ? result : [];
|
|
245
|
+
}
|
|
246
|
+
async updateChecklistItem(taskId, itemId, fields) {
|
|
247
|
+
const result = await this.makeRequest('task.checklistitem.update', {
|
|
248
|
+
TASKID: Number(taskId),
|
|
249
|
+
ITEMID: Number(itemId),
|
|
250
|
+
FIELDS: fields
|
|
251
|
+
});
|
|
252
|
+
return result === true || result === 1 || result === '1';
|
|
253
|
+
}
|
|
254
|
+
async deleteChecklistItem(taskId, itemId) {
|
|
255
|
+
const result = await this.makeRequest('task.checklistitem.delete', {
|
|
256
|
+
TASKID: Number(taskId),
|
|
257
|
+
ITEMID: Number(itemId)
|
|
258
|
+
});
|
|
259
|
+
return result === true || result === 1 || result === '1';
|
|
260
|
+
}
|
|
261
|
+
async getTaskDependencies(taskId) {
|
|
262
|
+
const task = await this.getTask(taskId);
|
|
263
|
+
const rawDependencies = task.DEPENDS_ON ?? task.dependsOn ?? [];
|
|
264
|
+
if (Array.isArray(rawDependencies)) {
|
|
265
|
+
return rawDependencies.map((id) => String(id));
|
|
266
|
+
}
|
|
267
|
+
if (rawDependencies === undefined || rawDependencies === null || rawDependencies === '') {
|
|
268
|
+
return [];
|
|
269
|
+
}
|
|
270
|
+
return [String(rawDependencies)];
|
|
271
|
+
}
|
|
272
|
+
async addTaskDependency(taskIdFrom, taskIdTo, linkType = 2) {
|
|
273
|
+
await this.makeRequest('task.dependence.add', {
|
|
274
|
+
taskIdFrom: Number(taskIdFrom),
|
|
275
|
+
taskIdTo: Number(taskIdTo),
|
|
276
|
+
linkType
|
|
277
|
+
});
|
|
278
|
+
return true;
|
|
279
|
+
}
|
|
280
|
+
async deleteTaskDependency(taskIdFrom, taskIdTo, linkType = 2) {
|
|
281
|
+
await this.makeRequest('task.dependence.delete', {
|
|
282
|
+
taskIdFrom: Number(taskIdFrom),
|
|
283
|
+
taskIdTo: Number(taskIdTo),
|
|
284
|
+
linkType
|
|
285
|
+
});
|
|
286
|
+
return true;
|
|
287
|
+
}
|
|
288
|
+
async resolveUploadFolderId(folderId) {
|
|
289
|
+
if (folderId) {
|
|
290
|
+
return folderId;
|
|
291
|
+
}
|
|
292
|
+
const configuredFolderId = process.env.BITRIX24_DISK_FOLDER_ID;
|
|
293
|
+
if (configuredFolderId) {
|
|
294
|
+
return configuredFolderId;
|
|
295
|
+
}
|
|
296
|
+
const storages = await this.makeRequest('disk.storage.getlist');
|
|
297
|
+
const storageList = Array.isArray(storages) ? storages : [];
|
|
298
|
+
const preferredStorage = storageList.find((storage) => storage?.ENTITY_TYPE === 'user') ||
|
|
299
|
+
storageList.find((storage) => storage?.ENTITY_TYPE === 'common') ||
|
|
300
|
+
storageList[0];
|
|
301
|
+
const rootObjectId = preferredStorage?.ROOT_OBJECT_ID ?? preferredStorage?.rootObjectId;
|
|
302
|
+
if (!rootObjectId) {
|
|
303
|
+
throw new Error('Unable to resolve Bitrix24 disk folder. Set BITRIX24_DISK_FOLDER_ID or grant disk scope on the webhook.');
|
|
304
|
+
}
|
|
305
|
+
return String(rootObjectId);
|
|
306
|
+
}
|
|
307
|
+
async uploadFileToDisk(params) {
|
|
308
|
+
const folderId = await this.resolveUploadFolderId(params.folderId);
|
|
309
|
+
const result = await this.makeRequest('disk.folder.uploadfile', {
|
|
310
|
+
id: folderId,
|
|
311
|
+
data: { NAME: params.fileName },
|
|
312
|
+
fileContent: [params.fileName, params.base64Content],
|
|
313
|
+
generateUniqueName: params.generateUniqueName ?? true
|
|
314
|
+
});
|
|
315
|
+
const diskObjectId = String(result?.ID ?? result?.id ?? '');
|
|
316
|
+
if (!diskObjectId) {
|
|
317
|
+
throw new Error(`disk.folder.uploadfile returned no disk object ID for file ${params.fileName}`);
|
|
318
|
+
}
|
|
319
|
+
return {
|
|
320
|
+
diskObjectId,
|
|
321
|
+
fileId: result?.FILE_ID ? String(result.FILE_ID) : undefined,
|
|
322
|
+
name: String(result?.NAME ?? params.fileName),
|
|
323
|
+
downloadUrl: result?.DOWNLOAD_URL
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
async attachDiskFileToTask(taskId, diskObjectId) {
|
|
327
|
+
try {
|
|
328
|
+
const result = await this.makeRequest('tasks.task.files.attach', {
|
|
329
|
+
taskId: Number(taskId),
|
|
330
|
+
fileId: Number(diskObjectId)
|
|
331
|
+
});
|
|
332
|
+
const attachmentId = result?.attachmentId ?? result?.ATTACHMENT_ID;
|
|
333
|
+
return attachmentId !== undefined ? String(attachmentId) : undefined;
|
|
334
|
+
}
|
|
335
|
+
catch (attachError) {
|
|
336
|
+
const task = await this.getTask(taskId);
|
|
337
|
+
const existingTokens = this.extractWebdavFileTokens(task);
|
|
338
|
+
const nextToken = toWebdavFileToken(diskObjectId);
|
|
339
|
+
if (existingTokens.includes(nextToken)) {
|
|
340
|
+
return undefined;
|
|
341
|
+
}
|
|
342
|
+
await this.updateTask(taskId, {
|
|
343
|
+
UF_TASK_WEBDAV_FILES: [...existingTokens, nextToken]
|
|
344
|
+
});
|
|
345
|
+
if (attachError instanceof Error) {
|
|
346
|
+
console.error(`tasks.task.files.attach failed for task ${taskId}, used UF_TASK_WEBDAV_FILES fallback:`, attachError.message);
|
|
347
|
+
}
|
|
348
|
+
return undefined;
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
extractWebdavFileTokens(task) {
|
|
352
|
+
const raw = task?.UF_TASK_WEBDAV_FILES ?? task?.ufTaskWebdavFiles ?? [];
|
|
353
|
+
if (Array.isArray(raw)) {
|
|
354
|
+
return raw.map((value) => String(value));
|
|
355
|
+
}
|
|
356
|
+
if (raw === undefined || raw === null || raw === '') {
|
|
357
|
+
return [];
|
|
358
|
+
}
|
|
359
|
+
return [String(raw)];
|
|
360
|
+
}
|
|
361
|
+
async attachLocalFileToTask(taskId, filePath, folderId) {
|
|
362
|
+
const { fileName, base64 } = await readLocalFileAsBase64(filePath);
|
|
363
|
+
const uploaded = await this.uploadFileToDisk({
|
|
364
|
+
folderId,
|
|
365
|
+
fileName,
|
|
366
|
+
base64Content: base64
|
|
367
|
+
});
|
|
368
|
+
const attachmentId = await this.attachDiskFileToTask(taskId, uploaded.diskObjectId);
|
|
369
|
+
return {
|
|
370
|
+
filePath,
|
|
371
|
+
fileName: uploaded.name,
|
|
372
|
+
diskObjectId: uploaded.diskObjectId,
|
|
373
|
+
attachmentId
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
async attachLocalFilesToTask(taskId, filePaths, folderId) {
|
|
377
|
+
const attached = [];
|
|
378
|
+
const errors = [];
|
|
379
|
+
for (const filePath of filePaths) {
|
|
380
|
+
try {
|
|
381
|
+
const result = await this.attachLocalFileToTask(taskId, filePath, folderId);
|
|
382
|
+
attached.push(result);
|
|
383
|
+
}
|
|
384
|
+
catch (error) {
|
|
385
|
+
errors.push(`${filePath}: ${error instanceof Error ? error.message : String(error)}`);
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
return { attached, errors };
|
|
389
|
+
}
|
|
242
390
|
// Project Methods (Bitrix24 workgroups)
|
|
243
391
|
async createProject(project) {
|
|
244
392
|
const result = await this.makeRequest('sonet_group.create', { fields: project });
|
|
@@ -400,6 +548,7 @@ export class Bitrix24Client {
|
|
|
400
548
|
permissions: null,
|
|
401
549
|
tasks_access: false,
|
|
402
550
|
projects_access: false,
|
|
551
|
+
disk_access: false,
|
|
403
552
|
error_details: []
|
|
404
553
|
};
|
|
405
554
|
try {
|
|
@@ -419,6 +568,9 @@ export class Bitrix24Client {
|
|
|
419
568
|
if (scopes.includes('task') || scopes.includes('tasks_extended')) {
|
|
420
569
|
results.tasks_access = true;
|
|
421
570
|
}
|
|
571
|
+
if (scopes.includes('disk')) {
|
|
572
|
+
results.disk_access = true;
|
|
573
|
+
}
|
|
422
574
|
try {
|
|
423
575
|
await this.getLatestTasks(1);
|
|
424
576
|
results.tasks_access = true;
|
|
@@ -435,6 +587,15 @@ export class Bitrix24Client {
|
|
|
435
587
|
catch (error) {
|
|
436
588
|
results.error_details.push(`projects access failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
437
589
|
}
|
|
590
|
+
try {
|
|
591
|
+
await this.resolveUploadFolderId();
|
|
592
|
+
results.disk_access = true;
|
|
593
|
+
}
|
|
594
|
+
catch (error) {
|
|
595
|
+
if (!results.disk_access) {
|
|
596
|
+
results.error_details.push(`disk access failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
597
|
+
}
|
|
598
|
+
}
|
|
438
599
|
return results;
|
|
439
600
|
}
|
|
440
601
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/bitrix24/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/bitrix24/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function getFileName(filePath: string): string;
|
|
2
|
+
export declare function isImageFile(filePath: string): boolean;
|
|
3
|
+
export declare function readLocalFileAsBase64(filePath: string): Promise<{
|
|
4
|
+
fileName: string;
|
|
5
|
+
base64: string;
|
|
6
|
+
isImage: boolean;
|
|
7
|
+
}>;
|
|
8
|
+
export declare function toWebdavFileToken(diskObjectId: string | number): string;
|
|
9
|
+
//# sourceMappingURL=taskFiles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taskFiles.d.ts","sourceRoot":"","sources":["../../src/bitrix24/taskFiles.ts"],"names":[],"mappings":"AAeA,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC,CAUD;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAEvE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
const IMAGE_EXTENSIONS = new Set([
|
|
4
|
+
'.png',
|
|
5
|
+
'.jpg',
|
|
6
|
+
'.jpeg',
|
|
7
|
+
'.gif',
|
|
8
|
+
'.webp',
|
|
9
|
+
'.bmp',
|
|
10
|
+
'.svg',
|
|
11
|
+
'.heic',
|
|
12
|
+
'.heif'
|
|
13
|
+
]);
|
|
14
|
+
export function getFileName(filePath) {
|
|
15
|
+
return path.basename(filePath);
|
|
16
|
+
}
|
|
17
|
+
export function isImageFile(filePath) {
|
|
18
|
+
return IMAGE_EXTENSIONS.has(path.extname(filePath).toLowerCase());
|
|
19
|
+
}
|
|
20
|
+
export async function readLocalFileAsBase64(filePath) {
|
|
21
|
+
const resolvedPath = path.resolve(filePath);
|
|
22
|
+
const buffer = await readFile(resolvedPath);
|
|
23
|
+
const fileName = getFileName(resolvedPath);
|
|
24
|
+
return {
|
|
25
|
+
fileName,
|
|
26
|
+
base64: buffer.toString('base64'),
|
|
27
|
+
isImage: isImageFile(resolvedPath)
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export function toWebdavFileToken(diskObjectId) {
|
|
31
|
+
return `n${diskObjectId}`;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=taskFiles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taskFiles.js","sourceRoot":"","sources":["../../src/bitrix24/taskFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;CACR,CAAC,CAAC;AAEH,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC1C,OAAO,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAgB;IAK1D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;IAE3C,OAAO;QACL,QAAQ;QACR,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACjC,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAA6B;IAC7D,OAAO,IAAI,YAAY,EAAE,CAAC;AAC5B,CAAC"}
|
package/build/index.js
CHANGED
package/build/tools/index.d.ts
CHANGED
|
@@ -4,7 +4,15 @@ export declare const getTaskTool: Tool;
|
|
|
4
4
|
export declare const listTasksTool: Tool;
|
|
5
5
|
export declare const getLatestTasksTool: Tool;
|
|
6
6
|
export declare const getTasksFromDateRangeTool: Tool;
|
|
7
|
+
export declare const attachFilesToTaskTool: Tool;
|
|
7
8
|
export declare const updateTaskTool: Tool;
|
|
9
|
+
export declare const addTaskChecklistItemTool: Tool;
|
|
10
|
+
export declare const listTaskChecklistItemsTool: Tool;
|
|
11
|
+
export declare const updateTaskChecklistItemTool: Tool;
|
|
12
|
+
export declare const deleteTaskChecklistItemTool: Tool;
|
|
13
|
+
export declare const getTaskDependenciesTool: Tool;
|
|
14
|
+
export declare const addTaskDependencyTool: Tool;
|
|
15
|
+
export declare const deleteTaskDependencyTool: Tool;
|
|
8
16
|
export declare const createProjectTool: Tool;
|
|
9
17
|
export declare const getProjectTool: Tool;
|
|
10
18
|
export declare const listProjectsTool: Tool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI1D,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI1D,eAAO,MAAM,cAAc,EAAE,IAqD5B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,IAUzB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,IA2B3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,IAShC,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,IAYvC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,IAqBnC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,IA0B5B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,IAetC,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,IAsBxC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,IAgBzC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,IAWzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,IAUrC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,IAiBnC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,IAiBtC,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,IAkB/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,IAU5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,IAsB9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,IA4B/B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,IAarC,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,IAOjC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,IAOrC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,IAUzB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,IAO7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,IAclC,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;6CAyBpB,CAAC;AAEF,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAsX3E"}
|
package/build/tools/index.js
CHANGED
|
@@ -11,12 +11,42 @@ export const createTaskTool = {
|
|
|
11
11
|
responsibleId: { type: 'string', description: 'Responsible user ID' },
|
|
12
12
|
creatorId: { type: 'string', description: 'Creator user ID' },
|
|
13
13
|
projectId: { type: 'string', description: 'Project/group ID (GROUP_ID)' },
|
|
14
|
+
parentTaskId: { type: 'string', description: 'Parent task ID (PARENT_ID) for subtask linkage' },
|
|
14
15
|
deadline: { type: 'string', description: 'Deadline (ISO 8601)' },
|
|
15
16
|
priority: {
|
|
16
17
|
type: 'string',
|
|
17
18
|
enum: ['0', '1', '2'],
|
|
18
19
|
description: '0=Low, 1=Normal, 2=High',
|
|
19
20
|
default: '1'
|
|
21
|
+
},
|
|
22
|
+
filePaths: {
|
|
23
|
+
type: 'array',
|
|
24
|
+
items: { type: 'string' },
|
|
25
|
+
description: 'Optional local file paths (absolute or relative to MCP process cwd) to upload and attach to the task (images and other files)'
|
|
26
|
+
},
|
|
27
|
+
diskFolderId: {
|
|
28
|
+
type: 'string',
|
|
29
|
+
description: 'Optional Bitrix24 disk folder ID for uploads. Defaults to BITRIX24_DISK_FOLDER_ID or the webhook user storage root folder'
|
|
30
|
+
},
|
|
31
|
+
checklist: {
|
|
32
|
+
type: 'array',
|
|
33
|
+
description: 'Optional checklist items to create inside the task',
|
|
34
|
+
items: {
|
|
35
|
+
oneOf: [
|
|
36
|
+
{ type: 'string', description: 'Checklist item title' },
|
|
37
|
+
{
|
|
38
|
+
type: 'object',
|
|
39
|
+
properties: {
|
|
40
|
+
title: { type: 'string', description: 'Checklist item title' },
|
|
41
|
+
parentId: { type: 'number', description: 'Parent checklist item ID (for nested items)' },
|
|
42
|
+
sortIndex: { type: 'number', description: 'Sort index for the checklist item' },
|
|
43
|
+
isComplete: { type: 'boolean', description: 'Checklist item completion status' },
|
|
44
|
+
isImportant: { type: 'boolean', description: 'Mark checklist item as important' }
|
|
45
|
+
},
|
|
46
|
+
required: ['title']
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
20
50
|
}
|
|
21
51
|
},
|
|
22
52
|
required: ['title']
|
|
@@ -84,6 +114,26 @@ export const getTasksFromDateRangeTool = {
|
|
|
84
114
|
required: ['startDate']
|
|
85
115
|
}
|
|
86
116
|
};
|
|
117
|
+
export const attachFilesToTaskTool = {
|
|
118
|
+
name: 'bitrix24_attach_files_to_task',
|
|
119
|
+
description: 'Upload local files (images, documents) to Bitrix24 Disk and attach them to an existing task',
|
|
120
|
+
inputSchema: {
|
|
121
|
+
type: 'object',
|
|
122
|
+
properties: {
|
|
123
|
+
taskId: { type: 'string', description: 'Task ID' },
|
|
124
|
+
filePaths: {
|
|
125
|
+
type: 'array',
|
|
126
|
+
items: { type: 'string' },
|
|
127
|
+
description: 'Local file paths to upload and attach'
|
|
128
|
+
},
|
|
129
|
+
diskFolderId: {
|
|
130
|
+
type: 'string',
|
|
131
|
+
description: 'Optional Bitrix24 disk folder ID. Defaults to BITRIX24_DISK_FOLDER_ID or user storage root'
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
required: ['taskId', 'filePaths']
|
|
135
|
+
}
|
|
136
|
+
};
|
|
87
137
|
export const updateTaskTool = {
|
|
88
138
|
name: 'bitrix24_update_task',
|
|
89
139
|
description: 'Update an existing task in Bitrix24',
|
|
@@ -95,6 +145,7 @@ export const updateTaskTool = {
|
|
|
95
145
|
description: { type: 'string', description: 'Task description' },
|
|
96
146
|
responsibleId: { type: 'string', description: 'Responsible user ID' },
|
|
97
147
|
projectId: { type: 'string', description: 'Project/group ID (GROUP_ID)' },
|
|
148
|
+
parentTaskId: { type: 'string', description: 'Parent task ID (PARENT_ID) for subtask linkage' },
|
|
98
149
|
deadline: { type: 'string', description: 'Deadline (ISO 8601)' },
|
|
99
150
|
priority: {
|
|
100
151
|
type: 'string',
|
|
@@ -110,6 +161,121 @@ export const updateTaskTool = {
|
|
|
110
161
|
required: ['id']
|
|
111
162
|
}
|
|
112
163
|
};
|
|
164
|
+
export const addTaskChecklistItemTool = {
|
|
165
|
+
name: 'bitrix24_add_task_checklist_item',
|
|
166
|
+
description: 'Add a checklist item to a task',
|
|
167
|
+
inputSchema: {
|
|
168
|
+
type: 'object',
|
|
169
|
+
properties: {
|
|
170
|
+
taskId: { type: 'string', description: 'Task ID' },
|
|
171
|
+
title: { type: 'string', description: 'Checklist item title' },
|
|
172
|
+
parentId: { type: 'number', description: 'Parent checklist item ID (for nested items)' },
|
|
173
|
+
sortIndex: { type: 'number', description: 'Sort index for checklist item' },
|
|
174
|
+
isComplete: { type: 'boolean', description: 'Checklist item completion status' },
|
|
175
|
+
isImportant: { type: 'boolean', description: 'Mark checklist item as important' }
|
|
176
|
+
},
|
|
177
|
+
required: ['taskId', 'title']
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
export const listTaskChecklistItemsTool = {
|
|
181
|
+
name: 'bitrix24_list_task_checklist_items',
|
|
182
|
+
description: 'List checklist items for a task',
|
|
183
|
+
inputSchema: {
|
|
184
|
+
type: 'object',
|
|
185
|
+
properties: {
|
|
186
|
+
taskId: { type: 'string', description: 'Task ID' },
|
|
187
|
+
orderBy: {
|
|
188
|
+
type: 'string',
|
|
189
|
+
enum: ['ID', 'PARENT_ID', 'CREATED_BY', 'TITLE', 'SORT_INDEX', 'IS_COMPLETE', 'IS_IMPORTANT'],
|
|
190
|
+
description: 'Checklist order field',
|
|
191
|
+
default: 'ID'
|
|
192
|
+
},
|
|
193
|
+
orderDirection: {
|
|
194
|
+
type: 'string',
|
|
195
|
+
enum: ['ASC', 'DESC'],
|
|
196
|
+
description: 'Order direction',
|
|
197
|
+
default: 'DESC'
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
required: ['taskId']
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
export const updateTaskChecklistItemTool = {
|
|
204
|
+
name: 'bitrix24_update_task_checklist_item',
|
|
205
|
+
description: 'Update a checklist item in a task',
|
|
206
|
+
inputSchema: {
|
|
207
|
+
type: 'object',
|
|
208
|
+
properties: {
|
|
209
|
+
taskId: { type: 'string', description: 'Task ID' },
|
|
210
|
+
itemId: { type: 'string', description: 'Checklist item ID' },
|
|
211
|
+
title: { type: 'string', description: 'Checklist item title' },
|
|
212
|
+
parentId: { type: 'number', description: 'Parent checklist item ID (for nested items)' },
|
|
213
|
+
sortIndex: { type: 'number', description: 'Sort index for checklist item' },
|
|
214
|
+
isComplete: { type: 'boolean', description: 'Checklist item completion status' },
|
|
215
|
+
isImportant: { type: 'boolean', description: 'Mark checklist item as important' }
|
|
216
|
+
},
|
|
217
|
+
required: ['taskId', 'itemId']
|
|
218
|
+
}
|
|
219
|
+
};
|
|
220
|
+
export const deleteTaskChecklistItemTool = {
|
|
221
|
+
name: 'bitrix24_delete_task_checklist_item',
|
|
222
|
+
description: 'Delete a checklist item from a task',
|
|
223
|
+
inputSchema: {
|
|
224
|
+
type: 'object',
|
|
225
|
+
properties: {
|
|
226
|
+
taskId: { type: 'string', description: 'Task ID' },
|
|
227
|
+
itemId: { type: 'string', description: 'Checklist item ID' }
|
|
228
|
+
},
|
|
229
|
+
required: ['taskId', 'itemId']
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
export const getTaskDependenciesTool = {
|
|
233
|
+
name: 'bitrix24_get_task_dependencies',
|
|
234
|
+
description: 'Get task dependencies from DEPENDS_ON field',
|
|
235
|
+
inputSchema: {
|
|
236
|
+
type: 'object',
|
|
237
|
+
properties: {
|
|
238
|
+
taskId: { type: 'string', description: 'Task ID' }
|
|
239
|
+
},
|
|
240
|
+
required: ['taskId']
|
|
241
|
+
}
|
|
242
|
+
};
|
|
243
|
+
export const addTaskDependencyTool = {
|
|
244
|
+
name: 'bitrix24_add_task_dependency',
|
|
245
|
+
description: 'Create dependency link between two tasks',
|
|
246
|
+
inputSchema: {
|
|
247
|
+
type: 'object',
|
|
248
|
+
properties: {
|
|
249
|
+
taskIdFrom: { type: 'string', description: 'Source task ID (dependency starts from this task)' },
|
|
250
|
+
taskIdTo: { type: 'string', description: 'Target task ID (dependency points to this task)' },
|
|
251
|
+
linkType: {
|
|
252
|
+
type: 'number',
|
|
253
|
+
enum: [0, 1, 2, 3],
|
|
254
|
+
description: '0=start-start, 1=start-finish, 2=finish-start, 3=finish-finish',
|
|
255
|
+
default: 2
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
required: ['taskIdFrom', 'taskIdTo']
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
export const deleteTaskDependencyTool = {
|
|
262
|
+
name: 'bitrix24_delete_task_dependency',
|
|
263
|
+
description: 'Delete dependency link between two tasks',
|
|
264
|
+
inputSchema: {
|
|
265
|
+
type: 'object',
|
|
266
|
+
properties: {
|
|
267
|
+
taskIdFrom: { type: 'string', description: 'Source task ID' },
|
|
268
|
+
taskIdTo: { type: 'string', description: 'Target task ID' },
|
|
269
|
+
linkType: {
|
|
270
|
+
type: 'number',
|
|
271
|
+
enum: [0, 1, 2, 3],
|
|
272
|
+
description: '0=start-start, 1=start-finish, 2=finish-start, 3=finish-finish',
|
|
273
|
+
default: 2
|
|
274
|
+
}
|
|
275
|
+
},
|
|
276
|
+
required: ['taskIdFrom', 'taskIdTo']
|
|
277
|
+
}
|
|
278
|
+
};
|
|
113
279
|
// Project Management Tools
|
|
114
280
|
export const createProjectTool = {
|
|
115
281
|
name: 'bitrix24_create_project',
|
|
@@ -265,6 +431,14 @@ export const allTools = [
|
|
|
265
431
|
getLatestTasksTool,
|
|
266
432
|
getTasksFromDateRangeTool,
|
|
267
433
|
updateTaskTool,
|
|
434
|
+
attachFilesToTaskTool,
|
|
435
|
+
addTaskChecklistItemTool,
|
|
436
|
+
listTaskChecklistItemsTool,
|
|
437
|
+
updateTaskChecklistItemTool,
|
|
438
|
+
deleteTaskChecklistItemTool,
|
|
439
|
+
getTaskDependenciesTool,
|
|
440
|
+
addTaskDependencyTool,
|
|
441
|
+
deleteTaskDependencyTool,
|
|
268
442
|
createProjectTool,
|
|
269
443
|
getProjectTool,
|
|
270
444
|
listProjectsTool,
|
|
@@ -286,11 +460,75 @@ export async function executeToolCall(name, args) {
|
|
|
286
460
|
RESPONSIBLE_ID: args.responsibleId,
|
|
287
461
|
CREATED_BY: args.creatorId,
|
|
288
462
|
GROUP_ID: args.projectId,
|
|
463
|
+
PARENT_ID: args.parentTaskId,
|
|
289
464
|
DEADLINE: args.deadline,
|
|
290
465
|
PRIORITY: args.priority || '1'
|
|
291
466
|
};
|
|
292
467
|
const taskId = await bitrix24Client.createTask(task);
|
|
293
|
-
|
|
468
|
+
const checklistItemIds = [];
|
|
469
|
+
const checklistErrors = [];
|
|
470
|
+
let attachedFiles = [];
|
|
471
|
+
const attachmentErrors = [];
|
|
472
|
+
if (Array.isArray(args.filePaths) && args.filePaths.length > 0) {
|
|
473
|
+
const attachmentResult = await bitrix24Client.attachLocalFilesToTask(taskId, args.filePaths, args.diskFolderId);
|
|
474
|
+
attachedFiles = attachmentResult.attached;
|
|
475
|
+
attachmentErrors.push(...attachmentResult.errors);
|
|
476
|
+
}
|
|
477
|
+
if (Array.isArray(args.checklist)) {
|
|
478
|
+
for (const rawChecklistItem of args.checklist) {
|
|
479
|
+
try {
|
|
480
|
+
let checklistPayload = null;
|
|
481
|
+
if (typeof rawChecklistItem === 'string') {
|
|
482
|
+
checklistPayload = { TITLE: rawChecklistItem };
|
|
483
|
+
}
|
|
484
|
+
else if (rawChecklistItem &&
|
|
485
|
+
typeof rawChecklistItem === 'object' &&
|
|
486
|
+
typeof rawChecklistItem.title === 'string') {
|
|
487
|
+
checklistPayload = {
|
|
488
|
+
TITLE: rawChecklistItem.title,
|
|
489
|
+
...(rawChecklistItem.parentId !== undefined ? { PARENT_ID: rawChecklistItem.parentId } : {}),
|
|
490
|
+
...(rawChecklistItem.sortIndex !== undefined ? { SORT_INDEX: rawChecklistItem.sortIndex } : {}),
|
|
491
|
+
...(rawChecklistItem.isComplete !== undefined
|
|
492
|
+
? { IS_COMPLETE: rawChecklistItem.isComplete ? 'Y' : 'N' }
|
|
493
|
+
: {}),
|
|
494
|
+
...(rawChecklistItem.isImportant !== undefined
|
|
495
|
+
? { IS_IMPORTANT: rawChecklistItem.isImportant ? 'Y' : 'N' }
|
|
496
|
+
: {})
|
|
497
|
+
};
|
|
498
|
+
}
|
|
499
|
+
if (!checklistPayload) {
|
|
500
|
+
checklistErrors.push('Skipped invalid checklist item payload');
|
|
501
|
+
continue;
|
|
502
|
+
}
|
|
503
|
+
const checklistItemId = await bitrix24Client.addChecklistItem(taskId, checklistPayload);
|
|
504
|
+
checklistItemIds.push(checklistItemId);
|
|
505
|
+
}
|
|
506
|
+
catch (error) {
|
|
507
|
+
checklistErrors.push(error instanceof Error ? error.message : String(error));
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
return {
|
|
512
|
+
success: true,
|
|
513
|
+
taskId,
|
|
514
|
+
attachedFiles,
|
|
515
|
+
attachmentErrors,
|
|
516
|
+
checklistItemIds,
|
|
517
|
+
checklistErrors,
|
|
518
|
+
message: `Task created with ID: ${taskId}`
|
|
519
|
+
};
|
|
520
|
+
}
|
|
521
|
+
case 'bitrix24_attach_files_to_task': {
|
|
522
|
+
const attachmentResult = await bitrix24Client.attachLocalFilesToTask(args.taskId, args.filePaths, args.diskFolderId);
|
|
523
|
+
return {
|
|
524
|
+
success: attachmentResult.errors.length === 0,
|
|
525
|
+
taskId: args.taskId,
|
|
526
|
+
attachedFiles: attachmentResult.attached,
|
|
527
|
+
errors: attachmentResult.errors,
|
|
528
|
+
message: attachmentResult.errors.length === 0
|
|
529
|
+
? `Attached ${attachmentResult.attached.length} file(s) to task ${args.taskId}`
|
|
530
|
+
: `Attached ${attachmentResult.attached.length} file(s) with ${attachmentResult.errors.length} error(s)`
|
|
531
|
+
};
|
|
294
532
|
}
|
|
295
533
|
case 'bitrix24_get_task': {
|
|
296
534
|
const task = await bitrix24Client.getTask(args.id);
|
|
@@ -338,6 +576,8 @@ export async function executeToolCall(name, args) {
|
|
|
338
576
|
updateTask.RESPONSIBLE_ID = args.responsibleId;
|
|
339
577
|
if (args.projectId)
|
|
340
578
|
updateTask.GROUP_ID = args.projectId;
|
|
579
|
+
if (args.parentTaskId)
|
|
580
|
+
updateTask.PARENT_ID = args.parentTaskId;
|
|
341
581
|
if (args.deadline)
|
|
342
582
|
updateTask.DEADLINE = args.deadline;
|
|
343
583
|
if (args.priority)
|
|
@@ -347,6 +587,96 @@ export async function executeToolCall(name, args) {
|
|
|
347
587
|
const updated = await bitrix24Client.updateTask(args.id, updateTask);
|
|
348
588
|
return { success: true, updated, message: `Task ${args.id} updated successfully` };
|
|
349
589
|
}
|
|
590
|
+
case 'bitrix24_add_task_checklist_item': {
|
|
591
|
+
const checklistItemId = await bitrix24Client.addChecklistItem(args.taskId, {
|
|
592
|
+
TITLE: args.title,
|
|
593
|
+
...(args.parentId !== undefined ? { PARENT_ID: args.parentId } : {}),
|
|
594
|
+
...(args.sortIndex !== undefined ? { SORT_INDEX: args.sortIndex } : {}),
|
|
595
|
+
...(args.isComplete !== undefined ? { IS_COMPLETE: args.isComplete ? 'Y' : 'N' } : {}),
|
|
596
|
+
...(args.isImportant !== undefined ? { IS_IMPORTANT: args.isImportant ? 'Y' : 'N' } : {})
|
|
597
|
+
});
|
|
598
|
+
return {
|
|
599
|
+
success: true,
|
|
600
|
+
taskId: args.taskId,
|
|
601
|
+
checklistItemId,
|
|
602
|
+
message: `Checklist item added to task ${args.taskId}`
|
|
603
|
+
};
|
|
604
|
+
}
|
|
605
|
+
case 'bitrix24_list_task_checklist_items': {
|
|
606
|
+
const order = {};
|
|
607
|
+
order[args.orderBy || 'ID'] = args.orderDirection || 'DESC';
|
|
608
|
+
const checklistItems = await bitrix24Client.listChecklistItems(args.taskId, order);
|
|
609
|
+
return {
|
|
610
|
+
success: true,
|
|
611
|
+
taskId: args.taskId,
|
|
612
|
+
checklistItems,
|
|
613
|
+
message: `Found ${checklistItems.length} checklist items`
|
|
614
|
+
};
|
|
615
|
+
}
|
|
616
|
+
case 'bitrix24_update_task_checklist_item': {
|
|
617
|
+
const fields = {};
|
|
618
|
+
if (args.title !== undefined)
|
|
619
|
+
fields.TITLE = args.title;
|
|
620
|
+
if (args.parentId !== undefined)
|
|
621
|
+
fields.PARENT_ID = args.parentId;
|
|
622
|
+
if (args.sortIndex !== undefined)
|
|
623
|
+
fields.SORT_INDEX = args.sortIndex;
|
|
624
|
+
if (args.isComplete !== undefined)
|
|
625
|
+
fields.IS_COMPLETE = args.isComplete ? 'Y' : 'N';
|
|
626
|
+
if (args.isImportant !== undefined)
|
|
627
|
+
fields.IS_IMPORTANT = args.isImportant ? 'Y' : 'N';
|
|
628
|
+
const updated = await bitrix24Client.updateChecklistItem(args.taskId, args.itemId, fields);
|
|
629
|
+
return {
|
|
630
|
+
success: true,
|
|
631
|
+
taskId: args.taskId,
|
|
632
|
+
itemId: args.itemId,
|
|
633
|
+
updated,
|
|
634
|
+
message: `Checklist item ${args.itemId} updated`
|
|
635
|
+
};
|
|
636
|
+
}
|
|
637
|
+
case 'bitrix24_delete_task_checklist_item': {
|
|
638
|
+
const deleted = await bitrix24Client.deleteChecklistItem(args.taskId, args.itemId);
|
|
639
|
+
return {
|
|
640
|
+
success: true,
|
|
641
|
+
taskId: args.taskId,
|
|
642
|
+
itemId: args.itemId,
|
|
643
|
+
deleted,
|
|
644
|
+
message: `Checklist item ${args.itemId} deleted`
|
|
645
|
+
};
|
|
646
|
+
}
|
|
647
|
+
case 'bitrix24_get_task_dependencies': {
|
|
648
|
+
const dependencies = await bitrix24Client.getTaskDependencies(args.taskId);
|
|
649
|
+
return {
|
|
650
|
+
success: true,
|
|
651
|
+
taskId: args.taskId,
|
|
652
|
+
dependencies,
|
|
653
|
+
message: `Found ${dependencies.length} dependencies`
|
|
654
|
+
};
|
|
655
|
+
}
|
|
656
|
+
case 'bitrix24_add_task_dependency': {
|
|
657
|
+
const linkType = (args.linkType ?? 2);
|
|
658
|
+
const linked = await bitrix24Client.addTaskDependency(args.taskIdFrom, args.taskIdTo, linkType);
|
|
659
|
+
return {
|
|
660
|
+
success: true,
|
|
661
|
+
linked,
|
|
662
|
+
taskIdFrom: args.taskIdFrom,
|
|
663
|
+
taskIdTo: args.taskIdTo,
|
|
664
|
+
linkType,
|
|
665
|
+
message: `Dependency created between tasks ${args.taskIdFrom} and ${args.taskIdTo}`
|
|
666
|
+
};
|
|
667
|
+
}
|
|
668
|
+
case 'bitrix24_delete_task_dependency': {
|
|
669
|
+
const linkType = (args.linkType ?? 2);
|
|
670
|
+
const deleted = await bitrix24Client.deleteTaskDependency(args.taskIdFrom, args.taskIdTo, linkType);
|
|
671
|
+
return {
|
|
672
|
+
success: true,
|
|
673
|
+
deleted,
|
|
674
|
+
taskIdFrom: args.taskIdFrom,
|
|
675
|
+
taskIdTo: args.taskIdTo,
|
|
676
|
+
linkType,
|
|
677
|
+
message: `Dependency removed between tasks ${args.taskIdFrom} and ${args.taskIdTo}`
|
|
678
|
+
};
|
|
679
|
+
}
|
|
350
680
|
case 'bitrix24_create_project': {
|
|
351
681
|
const project = {
|
|
352
682
|
NAME: args.name,
|
package/build/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|