@doist/todoist-ai 7.16.0 → 8.0.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/dist/index.d.ts +85 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -22
- package/dist/main-http.js +1 -1
- package/dist/main.js +1 -1
- package/dist/{mcp-server-CyfuDwZZ.js → mcp-server-BhctkyAa.js} +952 -883
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/tool-helpers.d.ts +2 -1
- package/dist/tool-helpers.d.ts.map +1 -1
- package/dist/tools/find-labels.d.ts +4 -4
- package/dist/tools/find-projects.d.ts +3 -3
- package/dist/tools/find-sections.d.ts +3 -3
- package/dist/tools/reschedule-tasks.d.ts +78 -0
- package/dist/tools/reschedule-tasks.d.ts.map +1 -0
- package/dist/utils/tool-names.d.ts +1 -0
- package/dist/utils/tool-names.d.ts.map +1 -1
- package/package.json +1 -1
- package/scripts/run-tool.ts +2 -0
package/dist/mcp-server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,OAAO,EAEH,aAAa,EACb,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,QAAQ,EAGhB,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,OAAO,EAEH,aAAa,EACb,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,QAAQ,EAGhB,MAAM,kBAAkB,CAAA;AAkHzB;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,EAClB,aAAa,EACb,OAAO,EACP,QAAa,GAChB,EAAE;IACC,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACtB,aAuFA;AAED,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAA"}
|
package/dist/tool-helpers.d.ts
CHANGED
|
@@ -60,7 +60,8 @@ export declare function fetchAllPages<TArgs extends {
|
|
|
60
60
|
}): Promise<TResult[]>;
|
|
61
61
|
/**
|
|
62
62
|
* Wraps a search query with wildcards for substring matching.
|
|
63
|
-
*
|
|
63
|
+
* If the query already contains unescaped wildcards, it is returned as-is
|
|
64
|
+
* to preserve intentional wildcard patterns (e.g. prefix matching with "work*").
|
|
64
65
|
*/
|
|
65
66
|
export declare function toWildcardQuery(query: string): string;
|
|
66
67
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-helpers.d.ts","sourceRoot":"","sources":["../src/tool-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,QAAQ,EACR,OAAO,EACP,WAAW,EACX,KAAK,EACL,YAAY,EACZ,eAAe,EACf,OAAO,EACP,IAAI,EACJ,UAAU,EACV,gBAAgB,EACnB,MAAM,+BAA+B,CAAA;AAOtC,OAAO,EACH,aAAa,EACb,+BAA+B,EAC/B,4BAA4B,EAC5B,0BAA0B,EAC1B,KAAK,wBAAwB,EAC7B,sBAAsB,GACzB,MAAM,qBAAqB,CAAA;AAE5B,MAAM,MAAM,OAAO,GAAG,eAAe,GAAG,gBAAgB,CAAA;AAExD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,eAAe,CAE9E;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,gBAAgB,CAEhF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEvE;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAC9C,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,CAAA;CACtB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB9B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,aAAa,CAC/B,KAAK,SAAS;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACxD,SAAS,SAAS;IAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EACnE,OAAO,EACT,OAAO,EAAE;IACP,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,SAAS,CAAC,CAAA;IAC9C,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAA;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAkBrB;AAED
|
|
1
|
+
{"version":3,"file":"tool-helpers.d.ts","sourceRoot":"","sources":["../src/tool-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ declare const findLabels: {
|
|
|
3
3
|
name: "find-labels";
|
|
4
4
|
description: string;
|
|
5
5
|
parameters: {
|
|
6
|
-
|
|
6
|
+
searchText: z.ZodOptional<z.ZodString>;
|
|
7
7
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
8
8
|
cursor: z.ZodOptional<z.ZodString>;
|
|
9
9
|
};
|
|
@@ -49,7 +49,7 @@ declare const findLabels: {
|
|
|
49
49
|
};
|
|
50
50
|
execute(args: {
|
|
51
51
|
limit: number;
|
|
52
|
-
|
|
52
|
+
searchText?: string | undefined;
|
|
53
53
|
cursor?: string | undefined;
|
|
54
54
|
}, client: import('@doist/todoist-api-typescript').TodoistApi): Promise<{
|
|
55
55
|
textContent: string;
|
|
@@ -66,13 +66,13 @@ declare const findLabels: {
|
|
|
66
66
|
hasMore: boolean;
|
|
67
67
|
sharedLabels: string[];
|
|
68
68
|
appliedFilters: {
|
|
69
|
-
|
|
69
|
+
searchText: string;
|
|
70
70
|
limit?: undefined;
|
|
71
71
|
cursor?: undefined;
|
|
72
72
|
} | {
|
|
73
73
|
limit: number;
|
|
74
74
|
cursor: string | undefined;
|
|
75
|
-
|
|
75
|
+
searchText?: undefined;
|
|
76
76
|
};
|
|
77
77
|
};
|
|
78
78
|
}>;
|
|
@@ -3,7 +3,7 @@ declare const findProjects: {
|
|
|
3
3
|
name: "find-projects";
|
|
4
4
|
description: string;
|
|
5
5
|
parameters: {
|
|
6
|
-
|
|
6
|
+
searchText: z.ZodOptional<z.ZodString>;
|
|
7
7
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
8
8
|
cursor: z.ZodOptional<z.ZodString>;
|
|
9
9
|
};
|
|
@@ -54,7 +54,7 @@ declare const findProjects: {
|
|
|
54
54
|
};
|
|
55
55
|
execute(args: {
|
|
56
56
|
limit: number;
|
|
57
|
-
|
|
57
|
+
searchText?: string | undefined;
|
|
58
58
|
cursor?: string | undefined;
|
|
59
59
|
}, client: import('@doist/todoist-api-typescript').TodoistApi): Promise<{
|
|
60
60
|
textContent: string;
|
|
@@ -77,7 +77,7 @@ declare const findProjects: {
|
|
|
77
77
|
hasMore: boolean;
|
|
78
78
|
appliedFilters: {
|
|
79
79
|
limit: number;
|
|
80
|
-
|
|
80
|
+
searchText?: string | undefined;
|
|
81
81
|
cursor?: string | undefined;
|
|
82
82
|
};
|
|
83
83
|
};
|
|
@@ -4,7 +4,7 @@ declare const findSections: {
|
|
|
4
4
|
description: string;
|
|
5
5
|
parameters: {
|
|
6
6
|
projectId: z.ZodString;
|
|
7
|
-
|
|
7
|
+
searchText: z.ZodOptional<z.ZodString>;
|
|
8
8
|
};
|
|
9
9
|
outputSchema: {
|
|
10
10
|
sections: z.ZodArray<z.ZodObject<{
|
|
@@ -21,7 +21,7 @@ declare const findSections: {
|
|
|
21
21
|
};
|
|
22
22
|
execute(args: {
|
|
23
23
|
projectId: string;
|
|
24
|
-
|
|
24
|
+
searchText?: string | undefined;
|
|
25
25
|
}, client: import('@doist/todoist-api-typescript').TodoistApi): Promise<{
|
|
26
26
|
textContent: string;
|
|
27
27
|
structuredContent: {
|
|
@@ -32,7 +32,7 @@ declare const findSections: {
|
|
|
32
32
|
totalCount: number;
|
|
33
33
|
appliedFilters: {
|
|
34
34
|
projectId: string;
|
|
35
|
-
|
|
35
|
+
searchText?: string | undefined;
|
|
36
36
|
};
|
|
37
37
|
};
|
|
38
38
|
}>;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Task } from '@doist/todoist-api-typescript';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
declare const rescheduleTasks: {
|
|
4
|
+
name: "reschedule-tasks";
|
|
5
|
+
description: string;
|
|
6
|
+
parameters: {
|
|
7
|
+
tasks: z.ZodArray<z.ZodObject<{
|
|
8
|
+
id: z.ZodString;
|
|
9
|
+
date: z.ZodString;
|
|
10
|
+
}, z.core.$strip>>;
|
|
11
|
+
};
|
|
12
|
+
outputSchema: {
|
|
13
|
+
tasks: z.ZodArray<z.ZodObject<{
|
|
14
|
+
id: z.ZodString;
|
|
15
|
+
content: z.ZodString;
|
|
16
|
+
description: z.ZodString;
|
|
17
|
+
dueDate: z.ZodOptional<z.ZodString>;
|
|
18
|
+
recurring: z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>;
|
|
19
|
+
deadlineDate: z.ZodOptional<z.ZodString>;
|
|
20
|
+
priority: z.ZodEnum<{
|
|
21
|
+
p1: "p1";
|
|
22
|
+
p2: "p2";
|
|
23
|
+
p3: "p3";
|
|
24
|
+
p4: "p4";
|
|
25
|
+
}>;
|
|
26
|
+
projectId: z.ZodString;
|
|
27
|
+
sectionId: z.ZodOptional<z.ZodString>;
|
|
28
|
+
parentId: z.ZodOptional<z.ZodString>;
|
|
29
|
+
labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
30
|
+
duration: z.ZodOptional<z.ZodString>;
|
|
31
|
+
responsibleUid: z.ZodOptional<z.ZodString>;
|
|
32
|
+
isUncompletable: z.ZodOptional<z.ZodBoolean>;
|
|
33
|
+
assignedByUid: z.ZodOptional<z.ZodString>;
|
|
34
|
+
checked: z.ZodBoolean;
|
|
35
|
+
completedAt: z.ZodOptional<z.ZodString>;
|
|
36
|
+
}, z.core.$strip>>;
|
|
37
|
+
totalCount: z.ZodNumber;
|
|
38
|
+
rescheduledTaskIds: z.ZodArray<z.ZodString>;
|
|
39
|
+
};
|
|
40
|
+
annotations: {
|
|
41
|
+
readOnlyHint: false;
|
|
42
|
+
destructiveHint: true;
|
|
43
|
+
idempotentHint: false;
|
|
44
|
+
};
|
|
45
|
+
execute(args: {
|
|
46
|
+
tasks: {
|
|
47
|
+
id: string;
|
|
48
|
+
date: string;
|
|
49
|
+
}[];
|
|
50
|
+
}, client: import('@doist/todoist-api-typescript').TodoistApi): Promise<{
|
|
51
|
+
textContent: string;
|
|
52
|
+
structuredContent: {
|
|
53
|
+
tasks: {
|
|
54
|
+
id: string;
|
|
55
|
+
content: string;
|
|
56
|
+
description: string;
|
|
57
|
+
dueDate: string | undefined;
|
|
58
|
+
recurring: string | boolean;
|
|
59
|
+
deadlineDate: string | undefined;
|
|
60
|
+
priority: "p1" | "p2" | "p3" | "p4";
|
|
61
|
+
projectId: string;
|
|
62
|
+
sectionId: string | undefined;
|
|
63
|
+
parentId: string | undefined;
|
|
64
|
+
labels: string[];
|
|
65
|
+
duration: string | undefined;
|
|
66
|
+
responsibleUid: string | undefined;
|
|
67
|
+
assignedByUid: string | undefined;
|
|
68
|
+
checked: boolean;
|
|
69
|
+
completedAt: string | undefined;
|
|
70
|
+
}[];
|
|
71
|
+
totalCount: number;
|
|
72
|
+
rescheduledTaskIds: string[];
|
|
73
|
+
};
|
|
74
|
+
}>;
|
|
75
|
+
};
|
|
76
|
+
declare function buildRescheduleDate(inputDate: string, existingDue: NonNullable<Task['due']>): string;
|
|
77
|
+
export { buildRescheduleDate, rescheduleTasks };
|
|
78
|
+
//# sourceMappingURL=reschedule-tasks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reschedule-tasks.d.ts","sourceRoot":"","sources":["../../src/tools/reschedule-tasks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAA;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AA+BvB,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuE0C,CAAA;AAE/D,iBAAS,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAU7F;AAED,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -13,6 +13,7 @@ export declare const ToolNames: {
|
|
|
13
13
|
readonly FIND_TASKS: "find-tasks";
|
|
14
14
|
readonly FIND_TASKS_BY_DATE: "find-tasks-by-date";
|
|
15
15
|
readonly FIND_COMPLETED_TASKS: "find-completed-tasks";
|
|
16
|
+
readonly RESCHEDULE_TASKS: "reschedule-tasks";
|
|
16
17
|
readonly ADD_PROJECTS: "add-projects";
|
|
17
18
|
readonly UPDATE_PROJECTS: "update-projects";
|
|
18
19
|
readonly FIND_PROJECTS: "find-projects";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-names.d.ts","sourceRoot":"","sources":["../../src/utils/tool-names.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"tool-names.d.ts","sourceRoot":"","sources":["../../src/utils/tool-names.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDZ,CAAA;AAGV,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAA"}
|
package/package.json
CHANGED
package/scripts/run-tool.ts
CHANGED
|
@@ -40,6 +40,7 @@ import { listWorkspaces } from '../src/tools/list-workspaces.js'
|
|
|
40
40
|
import { manageAssignments } from '../src/tools/manage-assignments.js'
|
|
41
41
|
import { projectManagement } from '../src/tools/project-management.js'
|
|
42
42
|
import { projectMove } from '../src/tools/project-move.js'
|
|
43
|
+
import { rescheduleTasks } from '../src/tools/reschedule-tasks.js'
|
|
43
44
|
import { search } from '../src/tools/search.js'
|
|
44
45
|
import { uncompleteTasks } from '../src/tools/uncomplete-tasks.js'
|
|
45
46
|
import { updateComments } from '../src/tools/update-comments.js'
|
|
@@ -86,6 +87,7 @@ const tools: Record<string, ExecutableTool> = {
|
|
|
86
87
|
'manage-assignments': manageAssignments,
|
|
87
88
|
'project-management': projectManagement,
|
|
88
89
|
'project-move': projectMove,
|
|
90
|
+
'reschedule-tasks': rescheduleTasks,
|
|
89
91
|
search: search,
|
|
90
92
|
'update-comments': updateComments,
|
|
91
93
|
'update-projects': updateProjects,
|