@doist/todoist-ai 0.1.4 → 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.
Files changed (91) hide show
  1. package/README.md +27 -0
  2. package/dist/index.d.ts +74 -34
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +70 -68
  5. package/dist/main.js +7 -7
  6. package/dist/mcp-helpers.d.ts +4 -4
  7. package/dist/mcp-helpers.d.ts.map +1 -1
  8. package/dist/mcp-helpers.js +5 -7
  9. package/dist/mcp-server.d.ts +4 -2
  10. package/dist/mcp-server.d.ts.map +1 -1
  11. package/dist/mcp-server.js +52 -49
  12. package/dist/todoist-tool.d.ts +2 -2
  13. package/dist/todoist-tool.d.ts.map +1 -1
  14. package/dist/tools/account-overview.d.ts +1 -1
  15. package/dist/tools/account-overview.d.ts.map +1 -1
  16. package/dist/tools/account-overview.js +12 -11
  17. package/dist/tools/project-overview.d.ts +2 -2
  18. package/dist/tools/project-overview.d.ts.map +1 -1
  19. package/dist/tools/project-overview.js +9 -12
  20. package/dist/tools/projects-add-one.d.ts +1 -1
  21. package/dist/tools/projects-add-one.d.ts.map +1 -1
  22. package/dist/tools/projects-add-one.js +5 -5
  23. package/dist/tools/projects-delete-one.d.ts +1 -1
  24. package/dist/tools/projects-delete-one.d.ts.map +1 -1
  25. package/dist/tools/projects-delete-one.js +3 -3
  26. package/dist/tools/projects-list.d.ts +2 -2
  27. package/dist/tools/projects-list.d.ts.map +1 -1
  28. package/dist/tools/projects-list.js +4 -4
  29. package/dist/tools/projects-search.d.ts +1 -1
  30. package/dist/tools/projects-search.d.ts.map +1 -1
  31. package/dist/tools/projects-search.js +7 -7
  32. package/dist/tools/projects-update-one.d.ts +3 -3
  33. package/dist/tools/projects-update-one.d.ts.map +1 -1
  34. package/dist/tools/projects-update-one.js +3 -3
  35. package/dist/tools/sections-add-one.d.ts +1 -1
  36. package/dist/tools/sections-add-one.d.ts.map +1 -1
  37. package/dist/tools/sections-add-one.js +4 -7
  38. package/dist/tools/sections-delete-one.d.ts +1 -1
  39. package/dist/tools/sections-delete-one.d.ts.map +1 -1
  40. package/dist/tools/sections-delete-one.js +3 -3
  41. package/dist/tools/sections-search.d.ts +1 -1
  42. package/dist/tools/sections-search.d.ts.map +1 -1
  43. package/dist/tools/sections-search.js +4 -7
  44. package/dist/tools/sections-update-one.d.ts +2 -2
  45. package/dist/tools/sections-update-one.d.ts.map +1 -1
  46. package/dist/tools/sections-update-one.js +3 -3
  47. package/dist/tools/shared.d.ts +4 -1
  48. package/dist/tools/shared.d.ts.map +1 -1
  49. package/dist/tools/shared.js +11 -3
  50. package/dist/tools/shared.test.d.ts +2 -0
  51. package/dist/tools/shared.test.d.ts.map +1 -0
  52. package/dist/tools/shared.test.js +135 -0
  53. package/dist/tools/subtasks-list-for-parent-task.d.ts +2 -2
  54. package/dist/tools/subtasks-list-for-parent-task.d.ts.map +1 -1
  55. package/dist/tools/subtasks-list-for-parent-task.js +7 -10
  56. package/dist/tools/tasks-add-multiple.d.ts +2 -2
  57. package/dist/tools/tasks-add-multiple.d.ts.map +1 -1
  58. package/dist/tools/tasks-add-multiple.js +12 -30
  59. package/dist/tools/tasks-complete-multiple.d.ts +1 -1
  60. package/dist/tools/tasks-complete-multiple.d.ts.map +1 -1
  61. package/dist/tools/tasks-complete-multiple.js +3 -6
  62. package/dist/tools/tasks-delete-one.d.ts +1 -1
  63. package/dist/tools/tasks-delete-one.d.ts.map +1 -1
  64. package/dist/tools/tasks-delete-one.js +3 -3
  65. package/dist/tools/{tasks-by-date-range.d.ts → tasks-list-by-date.d.ts} +2 -2
  66. package/dist/tools/tasks-list-by-date.d.ts.map +1 -0
  67. package/dist/tools/{tasks-by-date-range.js → tasks-list-by-date.js} +10 -10
  68. package/dist/tools/tasks-list-completed.d.ts +43 -0
  69. package/dist/tools/tasks-list-completed.d.ts.map +1 -0
  70. package/dist/tools/tasks-list-completed.js +52 -0
  71. package/dist/tools/{tasks-by-project.d.ts → tasks-list-for-project.d.ts} +2 -2
  72. package/dist/tools/tasks-list-for-project.d.ts.map +1 -0
  73. package/dist/tools/{tasks-by-project.js → tasks-list-for-project.js} +7 -10
  74. package/dist/tools/tasks-list-for-section.d.ts +1 -1
  75. package/dist/tools/tasks-list-for-section.d.ts.map +1 -1
  76. package/dist/tools/tasks-list-for-section.js +7 -10
  77. package/dist/tools/tasks-list-overdue.d.ts +1 -1
  78. package/dist/tools/tasks-list-overdue.d.ts.map +1 -1
  79. package/dist/tools/tasks-list-overdue.js +7 -7
  80. package/dist/tools/tasks-organize-multiple.d.ts +4 -4
  81. package/dist/tools/tasks-organize-multiple.d.ts.map +1 -1
  82. package/dist/tools/tasks-organize-multiple.js +8 -23
  83. package/dist/tools/tasks-search.d.ts +1 -1
  84. package/dist/tools/tasks-search.d.ts.map +1 -1
  85. package/dist/tools/tasks-search.js +6 -6
  86. package/dist/tools/tasks-update-one.d.ts +3 -3
  87. package/dist/tools/tasks-update-one.d.ts.map +1 -1
  88. package/dist/tools/tasks-update-one.js +9 -21
  89. package/package.json +54 -58
  90. package/dist/tools/tasks-by-date-range.d.ts.map +0 -1
  91. package/dist/tools/tasks-by-project.d.ts.map +0 -1
package/README.md CHANGED
@@ -91,3 +91,30 @@ See [docs/mcp-server.md](docs/mcp-server.md) for full instructions on setting up
91
91
  ## Local Development Setup
92
92
 
93
93
  See [docs/dev-setup.md](docs/dev-setup.md) for full instructions on setting up this repository locally for development and contributing.
94
+
95
+ ## Releasing
96
+
97
+ This project uses [release-please](https://github.com/googleapis/release-please) to automate version management and package publishing.
98
+
99
+ ### How it works
100
+
101
+ 1. Make your changes using [Conventional Commits](https://www.conventionalcommits.org/):
102
+
103
+ - `feat:` for new features (minor version bump)
104
+ - `fix:` for bug fixes (patch version bump)
105
+ - `feat!:` or `fix!:` for breaking changes (major version bump)
106
+ - `docs:` for documentation changes
107
+ - `chore:` for maintenance tasks
108
+ - `ci:` for CI changes
109
+
110
+ 2. When commits are pushed to `main`:
111
+
112
+ - Release-please automatically creates/updates a release PR
113
+ - The PR includes version bump and changelog updates
114
+ - Review the PR and merge when ready
115
+
116
+ 3. After merging the release PR:
117
+ - A new GitHub release is automatically created
118
+ - A new tag is created
119
+ - The `publish` workflow is triggered
120
+ - The package is published to npm
package/dist/index.d.ts CHANGED
@@ -1,26 +1,26 @@
1
- import { getMcpServer } from "./mcp-server.js";
2
- import { projectsAddOne } from "./tools/projects-add-one.js";
3
- import { projectsDeleteOne } from "./tools/projects-delete-one.js";
4
- import { projectsList } from "./tools/projects-list.js";
5
- import { projectsSearch } from "./tools/projects-search.js";
6
- import { projectsUpdateOne } from "./tools/projects-update-one.js";
7
- import { sectionsAddOne } from "./tools/sections-add-one.js";
8
- import { sectionsDeleteOne } from "./tools/sections-delete-one.js";
9
- import { sectionsSearch } from "./tools/sections-search.js";
10
- import { sectionsUpdateOne } from "./tools/sections-update-one.js";
11
- import { tasksAddMultiple } from "./tools/tasks-add-multiple.js";
12
- import { tasksListByDate } from "./tools/tasks-by-date-range.js";
13
- import { tasksListForProject } from "./tools/tasks-by-project.js";
14
- import { tasksCompleteMultiple } from "./tools/tasks-complete-multiple.js";
15
- import { tasksDeleteOne } from "./tools/tasks-delete-one.js";
16
- import { tasksListForSection } from "./tools/tasks-list-for-section.js";
17
- import { tasksListOverdue } from "./tools/tasks-list-overdue.js";
18
- import { tasksOrganizeMultiple } from "./tools/tasks-organize-multiple.js";
19
- import { tasksSearch } from "./tools/tasks-search.js";
20
- import { tasksUpdateOne } from "./tools/tasks-update-one.js";
21
- import { subtasksListForParentTask } from "./tools/subtasks-list-for-parent-task.js";
22
- import { accountOverview } from "./tools/account-overview.js";
23
- import { projectOverview } from "./tools/project-overview.js";
1
+ import { getMcpServer } from './mcp-server';
2
+ import { projectsAddOne } from './tools/projects-add-one';
3
+ import { projectsDeleteOne } from './tools/projects-delete-one';
4
+ import { projectsList } from './tools/projects-list';
5
+ import { projectsSearch } from './tools/projects-search';
6
+ import { projectsUpdateOne } from './tools/projects-update-one';
7
+ import { sectionsAddOne } from './tools/sections-add-one';
8
+ import { sectionsDeleteOne } from './tools/sections-delete-one';
9
+ import { sectionsSearch } from './tools/sections-search';
10
+ import { sectionsUpdateOne } from './tools/sections-update-one';
11
+ import { tasksAddMultiple } from './tools/tasks-add-multiple';
12
+ import { tasksCompleteMultiple } from './tools/tasks-complete-multiple';
13
+ import { tasksDeleteOne } from './tools/tasks-delete-one';
14
+ import { tasksListByDate } from './tools/tasks-list-by-date';
15
+ import { tasksListForProject } from './tools/tasks-list-for-project';
16
+ import { tasksListForSection } from './tools/tasks-list-for-section';
17
+ import { tasksListOverdue } from './tools/tasks-list-overdue';
18
+ import { tasksOrganizeMultiple } from './tools/tasks-organize-multiple';
19
+ import { tasksSearch } from './tools/tasks-search';
20
+ import { tasksUpdateOne } from './tools/tasks-update-one';
21
+ import { subtasksListForParentTask } from './tools/subtasks-list-for-parent-task';
22
+ import { accountOverview } from './tools/account-overview';
23
+ import { projectOverview } from './tools/project-overview';
24
24
  declare const tools: {
25
25
  projectsList: {
26
26
  name: string;
@@ -33,7 +33,7 @@ declare const tools: {
33
33
  limit: number;
34
34
  cursor?: string | undefined;
35
35
  }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<{
36
- projects: import("@doist/todoist-api-typescript").Project[];
36
+ projects: (import("@doist/todoist-api-typescript").PersonalProject | import("@doist/todoist-api-typescript").WorkspaceProject)[];
37
37
  nextCursor: string | null;
38
38
  }>;
39
39
  };
@@ -90,9 +90,9 @@ declare const tools: {
90
90
  name: import("zod").ZodString;
91
91
  };
92
92
  execute(args: {
93
- name: string;
94
93
  id: string;
95
- }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<import("@doist/todoist-api-typescript").Project>;
94
+ name: string;
95
+ }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<import("@doist/todoist-api-typescript").PersonalProject | import("@doist/todoist-api-typescript").WorkspaceProject>;
96
96
  };
97
97
  projectsDeleteOne: {
98
98
  name: string;
@@ -141,8 +141,8 @@ declare const tools: {
141
141
  name: import("zod").ZodString;
142
142
  };
143
143
  execute(args: {
144
- name: string;
145
144
  id: string;
145
+ name: string;
146
146
  }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<import("@doist/todoist-api-typescript").Section>;
147
147
  };
148
148
  sectionsDeleteOne: {
@@ -266,6 +266,46 @@ declare const tools: {
266
266
  nextCursor: string | null;
267
267
  }>;
268
268
  };
269
+ tasksListCompleted: {
270
+ name: string;
271
+ description: string;
272
+ parameters: {
273
+ getBy: import("zod").ZodDefault<import("zod").ZodEnum<["completion", "due"]>>;
274
+ since: import("zod").ZodString;
275
+ until: import("zod").ZodString;
276
+ workspaceId: import("zod").ZodOptional<import("zod").ZodString>;
277
+ projectId: import("zod").ZodOptional<import("zod").ZodString>;
278
+ sectionId: import("zod").ZodOptional<import("zod").ZodString>;
279
+ parentId: import("zod").ZodOptional<import("zod").ZodString>;
280
+ limit: import("zod").ZodDefault<import("zod").ZodNumber>;
281
+ cursor: import("zod").ZodOptional<import("zod").ZodString>;
282
+ };
283
+ execute(args: {
284
+ limit: number;
285
+ getBy: "completion" | "due";
286
+ since: string;
287
+ until: string;
288
+ parentId?: string | undefined;
289
+ workspaceId?: string | undefined;
290
+ cursor?: string | undefined;
291
+ projectId?: string | undefined;
292
+ sectionId?: string | undefined;
293
+ }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<{
294
+ tasks: {
295
+ id: string;
296
+ content: string;
297
+ description: string;
298
+ dueDate: string | undefined;
299
+ recurring: string | boolean;
300
+ priority: number;
301
+ projectId: string;
302
+ sectionId: string | null;
303
+ parentId: string | null;
304
+ labels: string[];
305
+ }[];
306
+ nextCursor: string | null;
307
+ }>;
308
+ };
269
309
  tasksSearch: {
270
310
  name: string;
271
311
  description: string;
@@ -325,8 +365,8 @@ declare const tools: {
325
365
  priority?: number | undefined;
326
366
  dueString?: string | undefined;
327
367
  }[];
328
- projectId?: string | undefined;
329
368
  parentId?: string | undefined;
369
+ projectId?: string | undefined;
330
370
  sectionId?: string | undefined;
331
371
  }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<{
332
372
  id: string;
@@ -357,9 +397,9 @@ declare const tools: {
357
397
  execute(args: {
358
398
  id: string;
359
399
  content?: string | undefined;
360
- projectId?: string | undefined;
361
- parentId?: string | undefined;
362
400
  description?: string | undefined;
401
+ parentId?: string | undefined;
402
+ projectId?: string | undefined;
363
403
  priority?: number | undefined;
364
404
  dueString?: string | undefined;
365
405
  sectionId?: string | undefined;
@@ -377,14 +417,14 @@ declare const tools: {
377
417
  order: import("zod").ZodOptional<import("zod").ZodNumber>;
378
418
  }, "strip", import("zod").ZodTypeAny, {
379
419
  id: string;
380
- projectId?: string | undefined;
381
420
  parentId?: string | undefined;
421
+ projectId?: string | undefined;
382
422
  sectionId?: string | undefined;
383
423
  order?: number | undefined;
384
424
  }, {
385
425
  id: string;
386
- projectId?: string | undefined;
387
426
  parentId?: string | undefined;
427
+ projectId?: string | undefined;
388
428
  sectionId?: string | undefined;
389
429
  order?: number | undefined;
390
430
  }>, "many">;
@@ -392,8 +432,8 @@ declare const tools: {
392
432
  execute(args: {
393
433
  tasks: {
394
434
  id: string;
395
- projectId?: string | undefined;
396
435
  parentId?: string | undefined;
436
+ projectId?: string | undefined;
397
437
  sectionId?: string | undefined;
398
438
  order?: number | undefined;
399
439
  }[];
@@ -436,8 +476,8 @@ declare const tools: {
436
476
  cursor: import("zod").ZodOptional<import("zod").ZodString>;
437
477
  };
438
478
  execute(args: {
439
- limit: number;
440
479
  parentId: string;
480
+ limit: number;
441
481
  cursor?: string | undefined;
442
482
  }, client: import("@doist/todoist-api-typescript").TodoistApi): Promise<{
443
483
  tasks: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAErF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBV,CAAC;AAEF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAE/B,OAAO,EACN,YAAY,EACZ,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,eAAe,GACf,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAA;AAEjF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAG1D,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwBV,CAAA;AAED,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;AAE9B,OAAO,EACH,YAAY,EACZ,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,eAAe,GAClB,CAAA"}
package/dist/index.js CHANGED
@@ -1,74 +1,76 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.projectOverview = exports.accountOverview = exports.subtasksListForParentTask = exports.tasksListForSection = exports.tasksOrganizeMultiple = exports.tasksUpdateOne = exports.tasksAddMultiple = exports.tasksSearch = exports.tasksListOverdue = exports.tasksListForProject = exports.tasksCompleteMultiple = exports.tasksDeleteOne = exports.tasksListByDate = exports.sectionsDeleteOne = exports.sectionsUpdateOne = exports.sectionsAddOne = exports.sectionsSearch = exports.projectsDeleteOne = exports.projectsUpdateOne = exports.projectsAddOne = exports.projectsSearch = exports.projectsList = exports.getMcpServer = exports.tools = void 0;
4
- const mcp_server_js_1 = require("./mcp-server.js");
5
- Object.defineProperty(exports, "getMcpServer", { enumerable: true, get: function () { return mcp_server_js_1.getMcpServer; } });
6
- const projects_add_one_js_1 = require("./tools/projects-add-one.js");
7
- Object.defineProperty(exports, "projectsAddOne", { enumerable: true, get: function () { return projects_add_one_js_1.projectsAddOne; } });
8
- const projects_delete_one_js_1 = require("./tools/projects-delete-one.js");
9
- Object.defineProperty(exports, "projectsDeleteOne", { enumerable: true, get: function () { return projects_delete_one_js_1.projectsDeleteOne; } });
10
- const projects_list_js_1 = require("./tools/projects-list.js");
11
- Object.defineProperty(exports, "projectsList", { enumerable: true, get: function () { return projects_list_js_1.projectsList; } });
12
- const projects_search_js_1 = require("./tools/projects-search.js");
13
- Object.defineProperty(exports, "projectsSearch", { enumerable: true, get: function () { return projects_search_js_1.projectsSearch; } });
14
- const projects_update_one_js_1 = require("./tools/projects-update-one.js");
15
- Object.defineProperty(exports, "projectsUpdateOne", { enumerable: true, get: function () { return projects_update_one_js_1.projectsUpdateOne; } });
16
- const sections_add_one_js_1 = require("./tools/sections-add-one.js");
17
- Object.defineProperty(exports, "sectionsAddOne", { enumerable: true, get: function () { return sections_add_one_js_1.sectionsAddOne; } });
18
- const sections_delete_one_js_1 = require("./tools/sections-delete-one.js");
19
- Object.defineProperty(exports, "sectionsDeleteOne", { enumerable: true, get: function () { return sections_delete_one_js_1.sectionsDeleteOne; } });
20
- const sections_search_js_1 = require("./tools/sections-search.js");
21
- Object.defineProperty(exports, "sectionsSearch", { enumerable: true, get: function () { return sections_search_js_1.sectionsSearch; } });
22
- const sections_update_one_js_1 = require("./tools/sections-update-one.js");
23
- Object.defineProperty(exports, "sectionsUpdateOne", { enumerable: true, get: function () { return sections_update_one_js_1.sectionsUpdateOne; } });
24
- const tasks_add_multiple_js_1 = require("./tools/tasks-add-multiple.js");
25
- Object.defineProperty(exports, "tasksAddMultiple", { enumerable: true, get: function () { return tasks_add_multiple_js_1.tasksAddMultiple; } });
26
- const tasks_by_date_range_js_1 = require("./tools/tasks-by-date-range.js");
27
- Object.defineProperty(exports, "tasksListByDate", { enumerable: true, get: function () { return tasks_by_date_range_js_1.tasksListByDate; } });
28
- const tasks_by_project_js_1 = require("./tools/tasks-by-project.js");
29
- Object.defineProperty(exports, "tasksListForProject", { enumerable: true, get: function () { return tasks_by_project_js_1.tasksListForProject; } });
30
- const tasks_complete_multiple_js_1 = require("./tools/tasks-complete-multiple.js");
31
- Object.defineProperty(exports, "tasksCompleteMultiple", { enumerable: true, get: function () { return tasks_complete_multiple_js_1.tasksCompleteMultiple; } });
32
- const tasks_delete_one_js_1 = require("./tools/tasks-delete-one.js");
33
- Object.defineProperty(exports, "tasksDeleteOne", { enumerable: true, get: function () { return tasks_delete_one_js_1.tasksDeleteOne; } });
34
- const tasks_list_for_section_js_1 = require("./tools/tasks-list-for-section.js");
35
- Object.defineProperty(exports, "tasksListForSection", { enumerable: true, get: function () { return tasks_list_for_section_js_1.tasksListForSection; } });
36
- const tasks_list_overdue_js_1 = require("./tools/tasks-list-overdue.js");
37
- Object.defineProperty(exports, "tasksListOverdue", { enumerable: true, get: function () { return tasks_list_overdue_js_1.tasksListOverdue; } });
38
- const tasks_organize_multiple_js_1 = require("./tools/tasks-organize-multiple.js");
39
- Object.defineProperty(exports, "tasksOrganizeMultiple", { enumerable: true, get: function () { return tasks_organize_multiple_js_1.tasksOrganizeMultiple; } });
40
- const tasks_search_js_1 = require("./tools/tasks-search.js");
41
- Object.defineProperty(exports, "tasksSearch", { enumerable: true, get: function () { return tasks_search_js_1.tasksSearch; } });
42
- const tasks_update_one_js_1 = require("./tools/tasks-update-one.js");
43
- Object.defineProperty(exports, "tasksUpdateOne", { enumerable: true, get: function () { return tasks_update_one_js_1.tasksUpdateOne; } });
44
- const subtasks_list_for_parent_task_js_1 = require("./tools/subtasks-list-for-parent-task.js");
45
- Object.defineProperty(exports, "subtasksListForParentTask", { enumerable: true, get: function () { return subtasks_list_for_parent_task_js_1.subtasksListForParentTask; } });
46
- const account_overview_js_1 = require("./tools/account-overview.js");
47
- Object.defineProperty(exports, "accountOverview", { enumerable: true, get: function () { return account_overview_js_1.accountOverview; } });
48
- const project_overview_js_1 = require("./tools/project-overview.js");
49
- Object.defineProperty(exports, "projectOverview", { enumerable: true, get: function () { return project_overview_js_1.projectOverview; } });
4
+ const mcp_server_1 = require("./mcp-server");
5
+ Object.defineProperty(exports, "getMcpServer", { enumerable: true, get: function () { return mcp_server_1.getMcpServer; } });
6
+ const projects_add_one_1 = require("./tools/projects-add-one");
7
+ Object.defineProperty(exports, "projectsAddOne", { enumerable: true, get: function () { return projects_add_one_1.projectsAddOne; } });
8
+ const projects_delete_one_1 = require("./tools/projects-delete-one");
9
+ Object.defineProperty(exports, "projectsDeleteOne", { enumerable: true, get: function () { return projects_delete_one_1.projectsDeleteOne; } });
10
+ const projects_list_1 = require("./tools/projects-list");
11
+ Object.defineProperty(exports, "projectsList", { enumerable: true, get: function () { return projects_list_1.projectsList; } });
12
+ const projects_search_1 = require("./tools/projects-search");
13
+ Object.defineProperty(exports, "projectsSearch", { enumerable: true, get: function () { return projects_search_1.projectsSearch; } });
14
+ const projects_update_one_1 = require("./tools/projects-update-one");
15
+ Object.defineProperty(exports, "projectsUpdateOne", { enumerable: true, get: function () { return projects_update_one_1.projectsUpdateOne; } });
16
+ const sections_add_one_1 = require("./tools/sections-add-one");
17
+ Object.defineProperty(exports, "sectionsAddOne", { enumerable: true, get: function () { return sections_add_one_1.sectionsAddOne; } });
18
+ const sections_delete_one_1 = require("./tools/sections-delete-one");
19
+ Object.defineProperty(exports, "sectionsDeleteOne", { enumerable: true, get: function () { return sections_delete_one_1.sectionsDeleteOne; } });
20
+ const sections_search_1 = require("./tools/sections-search");
21
+ Object.defineProperty(exports, "sectionsSearch", { enumerable: true, get: function () { return sections_search_1.sectionsSearch; } });
22
+ const sections_update_one_1 = require("./tools/sections-update-one");
23
+ Object.defineProperty(exports, "sectionsUpdateOne", { enumerable: true, get: function () { return sections_update_one_1.sectionsUpdateOne; } });
24
+ const tasks_add_multiple_1 = require("./tools/tasks-add-multiple");
25
+ Object.defineProperty(exports, "tasksAddMultiple", { enumerable: true, get: function () { return tasks_add_multiple_1.tasksAddMultiple; } });
26
+ const tasks_complete_multiple_1 = require("./tools/tasks-complete-multiple");
27
+ Object.defineProperty(exports, "tasksCompleteMultiple", { enumerable: true, get: function () { return tasks_complete_multiple_1.tasksCompleteMultiple; } });
28
+ const tasks_delete_one_1 = require("./tools/tasks-delete-one");
29
+ Object.defineProperty(exports, "tasksDeleteOne", { enumerable: true, get: function () { return tasks_delete_one_1.tasksDeleteOne; } });
30
+ const tasks_list_by_date_1 = require("./tools/tasks-list-by-date");
31
+ Object.defineProperty(exports, "tasksListByDate", { enumerable: true, get: function () { return tasks_list_by_date_1.tasksListByDate; } });
32
+ const tasks_list_for_project_1 = require("./tools/tasks-list-for-project");
33
+ Object.defineProperty(exports, "tasksListForProject", { enumerable: true, get: function () { return tasks_list_for_project_1.tasksListForProject; } });
34
+ const tasks_list_for_section_1 = require("./tools/tasks-list-for-section");
35
+ Object.defineProperty(exports, "tasksListForSection", { enumerable: true, get: function () { return tasks_list_for_section_1.tasksListForSection; } });
36
+ const tasks_list_overdue_1 = require("./tools/tasks-list-overdue");
37
+ Object.defineProperty(exports, "tasksListOverdue", { enumerable: true, get: function () { return tasks_list_overdue_1.tasksListOverdue; } });
38
+ const tasks_organize_multiple_1 = require("./tools/tasks-organize-multiple");
39
+ Object.defineProperty(exports, "tasksOrganizeMultiple", { enumerable: true, get: function () { return tasks_organize_multiple_1.tasksOrganizeMultiple; } });
40
+ const tasks_search_1 = require("./tools/tasks-search");
41
+ Object.defineProperty(exports, "tasksSearch", { enumerable: true, get: function () { return tasks_search_1.tasksSearch; } });
42
+ const tasks_update_one_1 = require("./tools/tasks-update-one");
43
+ Object.defineProperty(exports, "tasksUpdateOne", { enumerable: true, get: function () { return tasks_update_one_1.tasksUpdateOne; } });
44
+ const subtasks_list_for_parent_task_1 = require("./tools/subtasks-list-for-parent-task");
45
+ Object.defineProperty(exports, "subtasksListForParentTask", { enumerable: true, get: function () { return subtasks_list_for_parent_task_1.subtasksListForParentTask; } });
46
+ const account_overview_1 = require("./tools/account-overview");
47
+ Object.defineProperty(exports, "accountOverview", { enumerable: true, get: function () { return account_overview_1.accountOverview; } });
48
+ const project_overview_1 = require("./tools/project-overview");
49
+ Object.defineProperty(exports, "projectOverview", { enumerable: true, get: function () { return project_overview_1.projectOverview; } });
50
+ const tasks_list_completed_1 = require("./tools/tasks-list-completed");
50
51
  const tools = {
51
- projectsList: projects_list_js_1.projectsList,
52
- projectsSearch: projects_search_js_1.projectsSearch,
53
- projectsAddOne: projects_add_one_js_1.projectsAddOne,
54
- projectsUpdateOne: projects_update_one_js_1.projectsUpdateOne,
55
- projectsDeleteOne: projects_delete_one_js_1.projectsDeleteOne,
56
- sectionsSearch: sections_search_js_1.sectionsSearch,
57
- sectionsAddOne: sections_add_one_js_1.sectionsAddOne,
58
- sectionsUpdateOne: sections_update_one_js_1.sectionsUpdateOne,
59
- sectionsDeleteOne: sections_delete_one_js_1.sectionsDeleteOne,
60
- tasksListByDate: tasks_by_date_range_js_1.tasksListByDate,
61
- tasksDeleteOne: tasks_delete_one_js_1.tasksDeleteOne,
62
- tasksCompleteMultiple: tasks_complete_multiple_js_1.tasksCompleteMultiple,
63
- tasksListForProject: tasks_by_project_js_1.tasksListForProject,
64
- tasksListOverdue: tasks_list_overdue_js_1.tasksListOverdue,
65
- tasksSearch: tasks_search_js_1.tasksSearch,
66
- tasksAddMultiple: tasks_add_multiple_js_1.tasksAddMultiple,
67
- tasksUpdateOne: tasks_update_one_js_1.tasksUpdateOne,
68
- tasksOrganizeMultiple: tasks_organize_multiple_js_1.tasksOrganizeMultiple,
69
- tasksListForSection: tasks_list_for_section_js_1.tasksListForSection,
70
- subtasksListForParentTask: subtasks_list_for_parent_task_js_1.subtasksListForParentTask,
71
- accountOverview: account_overview_js_1.accountOverview,
72
- projectOverview: project_overview_js_1.projectOverview,
52
+ projectsList: projects_list_1.projectsList,
53
+ projectsSearch: projects_search_1.projectsSearch,
54
+ projectsAddOne: projects_add_one_1.projectsAddOne,
55
+ projectsUpdateOne: projects_update_one_1.projectsUpdateOne,
56
+ projectsDeleteOne: projects_delete_one_1.projectsDeleteOne,
57
+ sectionsSearch: sections_search_1.sectionsSearch,
58
+ sectionsAddOne: sections_add_one_1.sectionsAddOne,
59
+ sectionsUpdateOne: sections_update_one_1.sectionsUpdateOne,
60
+ sectionsDeleteOne: sections_delete_one_1.sectionsDeleteOne,
61
+ tasksListByDate: tasks_list_by_date_1.tasksListByDate,
62
+ tasksDeleteOne: tasks_delete_one_1.tasksDeleteOne,
63
+ tasksCompleteMultiple: tasks_complete_multiple_1.tasksCompleteMultiple,
64
+ tasksListForProject: tasks_list_for_project_1.tasksListForProject,
65
+ tasksListOverdue: tasks_list_overdue_1.tasksListOverdue,
66
+ tasksListCompleted: tasks_list_completed_1.tasksListCompleted,
67
+ tasksSearch: tasks_search_1.tasksSearch,
68
+ tasksAddMultiple: tasks_add_multiple_1.tasksAddMultiple,
69
+ tasksUpdateOne: tasks_update_one_1.tasksUpdateOne,
70
+ tasksOrganizeMultiple: tasks_organize_multiple_1.tasksOrganizeMultiple,
71
+ tasksListForSection: tasks_list_for_section_1.tasksListForSection,
72
+ subtasksListForParentTask: subtasks_list_for_parent_task_1.subtasksListForParentTask,
73
+ accountOverview: account_overview_1.accountOverview,
74
+ projectOverview: project_overview_1.projectOverview,
73
75
  };
74
76
  exports.tools = tools;
package/dist/main.js CHANGED
@@ -3,24 +3,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
6
+ const stdio_1 = require("@modelcontextprotocol/sdk/server/stdio");
7
7
  const dotenv_1 = __importDefault(require("dotenv"));
8
- const mcp_server_js_1 = require("./mcp-server.js");
8
+ const mcp_server_1 = require("./mcp-server");
9
9
  function main() {
10
10
  const todoistApiKey = process.env.TODOIST_API_KEY;
11
11
  if (!todoistApiKey) {
12
- throw new Error("TODOIST_API_KEY is not set");
12
+ throw new Error('TODOIST_API_KEY is not set');
13
13
  }
14
- const server = (0, mcp_server_js_1.getMcpServer)({ todoistApiKey });
15
- const transport = new stdio_js_1.StdioServerTransport();
14
+ const server = (0, mcp_server_1.getMcpServer)({ todoistApiKey });
15
+ const transport = new stdio_1.StdioServerTransport();
16
16
  server
17
17
  .connect(transport)
18
18
  .then(() => {
19
19
  // We use console.error because standard I/O is being used for the MCP server communication.
20
- console.error("Server started");
20
+ console.error('Server started');
21
21
  })
22
22
  .catch((error) => {
23
- console.error("Error starting the Todoist MCP server:", error);
23
+ console.error('Error starting the Todoist MCP server:', error);
24
24
  process.exit(1);
25
25
  });
26
26
  }
@@ -1,7 +1,7 @@
1
- import type { TodoistApi } from "@doist/todoist-api-typescript";
2
- import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
- import type { z } from "zod";
4
- import type { TodoistTool } from "./todoist-tool.js";
1
+ import type { TodoistApi } from '@doist/todoist-api-typescript';
2
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp';
3
+ import type { z } from 'zod';
4
+ import type { TodoistTool } from './todoist-tool';
5
5
  /**
6
6
  * Register a Todoist tool in an MCP server.
7
7
  * @param tool - The tool to register.
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-helpers.d.ts","sourceRoot":"","sources":["../src/mcp-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EACX,SAAS,EAET,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAc,CAAC,EAAE,MAAM,KAAK,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA+BrD;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW,EACjD,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,UAAU,QA2BlB;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"mcp-helpers.d.ts","sourceRoot":"","sources":["../src/mcp-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,sCAAsC,CAAA;AACnF,OAAO,KAAK,EAAc,CAAC,EAAE,MAAM,KAAK,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AA+BjD;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW,EAC9C,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,UAAU,QAqBrB;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -3,22 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerTool = registerTool;
4
4
  function textContent(text) {
5
5
  return {
6
- content: [{ type: "text", text }],
6
+ content: [{ type: 'text', text }],
7
7
  };
8
8
  }
9
9
  function jsonContent(data) {
10
10
  return {
11
11
  content: [
12
12
  {
13
- type: "text",
14
- mimeType: "application/json",
13
+ type: 'text',
14
+ mimeType: 'application/json',
15
15
  text: JSON.stringify(data, null, 2),
16
16
  },
17
17
  ],
18
18
  };
19
19
  }
20
20
  function textOrJsonContent(data) {
21
- return typeof data === "string" ? textContent(data) : jsonContent(data);
21
+ return typeof data === 'string' ? textContent(data) : jsonContent(data);
22
22
  }
23
23
  function errorContent(error) {
24
24
  return {
@@ -44,9 +44,7 @@ function registerTool(tool, server, client) {
44
44
  args,
45
45
  error,
46
46
  });
47
- const message = error instanceof Error
48
- ? error.message
49
- : "An unknown error occurred";
47
+ const message = error instanceof Error ? error.message : 'An unknown error occurred';
50
48
  return errorContent(message);
51
49
  }
52
50
  };
@@ -1,11 +1,13 @@
1
- import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp';
2
2
  /**
3
3
  * Create the MCP server.
4
4
  * @param todoistApiKey - The API key for the todoist account.
5
+ * @param baseUrl - The base URL for the todoist API.
5
6
  * @returns the MCP server.
6
7
  */
7
- declare function getMcpServer({ todoistApiKey }: {
8
+ declare function getMcpServer({ todoistApiKey, baseUrl }: {
8
9
  todoistApiKey: string;
10
+ baseUrl?: string;
9
11
  }): McpServer;
10
12
  export { getMcpServer };
11
13
  //# sourceMappingURL=mcp-server.d.ts.map
@@ -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,CAAC;AAiCpE;;;;GAIG;AACH,iBAAS,YAAY,CAAC,EAAE,aAAa,EAAE,EAAE;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,aAqCjE;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAA;AAkChE;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,aAsC5F;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}