@doist/todoist-mcp 0.0.1 → 10.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.
Files changed (165) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +205 -29
  3. package/dist/filter-helpers.d.ts +51 -0
  4. package/dist/filter-helpers.d.ts.map +1 -0
  5. package/dist/index.d.ts +2954 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +103 -0
  8. package/dist/main-http.d.ts +3 -0
  9. package/dist/main-http.d.ts.map +1 -0
  10. package/dist/main-http.js +41 -0
  11. package/dist/main.d.ts +3 -0
  12. package/dist/main.d.ts.map +1 -0
  13. package/dist/main.js +17 -0
  14. package/dist/mcp-apps/index.html +98 -0
  15. package/dist/mcp-helpers.d.ts +58 -0
  16. package/dist/mcp-helpers.d.ts.map +1 -0
  17. package/dist/mcp-server-B08TNWfi.js +6129 -0
  18. package/dist/mcp-server.d.ts +16 -0
  19. package/dist/mcp-server.d.ts.map +1 -0
  20. package/dist/middleware/require-valid-todoist-token.d.ts +38 -0
  21. package/dist/middleware/require-valid-todoist-token.d.ts.map +1 -0
  22. package/dist/prompts/productivity-analysis.d.ts +58 -0
  23. package/dist/prompts/productivity-analysis.d.ts.map +1 -0
  24. package/dist/require-valid-todoist-token-CoZu2QoC.js +72 -0
  25. package/dist/todoist-tool.d.ts +62 -0
  26. package/dist/todoist-tool.d.ts.map +1 -0
  27. package/dist/tool-execution-error.d.ts +7 -0
  28. package/dist/tool-execution-error.d.ts.map +1 -0
  29. package/dist/tool-helpers.d.ts +265 -0
  30. package/dist/tool-helpers.d.ts.map +1 -0
  31. package/dist/tools/add-comments.d.ts +83 -0
  32. package/dist/tools/add-comments.d.ts.map +1 -0
  33. package/dist/tools/add-filters.d.ts +94 -0
  34. package/dist/tools/add-filters.d.ts.map +1 -0
  35. package/dist/tools/add-labels.d.ts +92 -0
  36. package/dist/tools/add-labels.d.ts.map +1 -0
  37. package/dist/tools/add-projects.d.ts +112 -0
  38. package/dist/tools/add-projects.d.ts.map +1 -0
  39. package/dist/tools/add-reminders.d.ts +148 -0
  40. package/dist/tools/add-reminders.d.ts.map +1 -0
  41. package/dist/tools/add-sections.d.ts +40 -0
  42. package/dist/tools/add-sections.d.ts.map +1 -0
  43. package/dist/tools/add-tasks.d.ts +118 -0
  44. package/dist/tools/add-tasks.d.ts.map +1 -0
  45. package/dist/tools/analyze-project-health.d.ts +45 -0
  46. package/dist/tools/analyze-project-health.d.ts.map +1 -0
  47. package/dist/tools/complete-tasks.d.ts +42 -0
  48. package/dist/tools/complete-tasks.d.ts.map +1 -0
  49. package/dist/tools/delete-object.d.ts +54 -0
  50. package/dist/tools/delete-object.d.ts.map +1 -0
  51. package/dist/tools/fetch-object.d.ts +199 -0
  52. package/dist/tools/fetch-object.d.ts.map +1 -0
  53. package/dist/tools/fetch.d.ts +41 -0
  54. package/dist/tools/fetch.d.ts.map +1 -0
  55. package/dist/tools/find-activity.d.ts +91 -0
  56. package/dist/tools/find-activity.d.ts.map +1 -0
  57. package/dist/tools/find-comments.d.ts +89 -0
  58. package/dist/tools/find-comments.d.ts.map +1 -0
  59. package/dist/tools/find-completed-tasks.d.ts +115 -0
  60. package/dist/tools/find-completed-tasks.d.ts.map +1 -0
  61. package/dist/tools/find-filters.d.ts +92 -0
  62. package/dist/tools/find-filters.d.ts.map +1 -0
  63. package/dist/tools/find-labels.d.ts +81 -0
  64. package/dist/tools/find-labels.d.ts.map +1 -0
  65. package/dist/tools/find-project-collaborators.d.ts +94 -0
  66. package/dist/tools/find-project-collaborators.d.ts.map +1 -0
  67. package/dist/tools/find-projects.d.ts +87 -0
  68. package/dist/tools/find-projects.d.ts.map +1 -0
  69. package/dist/tools/find-reminders.d.ts +95 -0
  70. package/dist/tools/find-reminders.d.ts.map +1 -0
  71. package/dist/tools/find-sections.d.ts +41 -0
  72. package/dist/tools/find-sections.d.ts.map +1 -0
  73. package/dist/tools/find-tasks-by-date.d.ts +133 -0
  74. package/dist/tools/find-tasks-by-date.d.ts.map +1 -0
  75. package/dist/tools/find-tasks.d.ts +116 -0
  76. package/dist/tools/find-tasks.d.ts.map +1 -0
  77. package/dist/tools/get-overview.d.ts +123 -0
  78. package/dist/tools/get-overview.d.ts.map +1 -0
  79. package/dist/tools/get-productivity-stats.d.ts +160 -0
  80. package/dist/tools/get-productivity-stats.d.ts.map +1 -0
  81. package/dist/tools/get-project-activity-stats.d.ts +48 -0
  82. package/dist/tools/get-project-activity-stats.d.ts.map +1 -0
  83. package/dist/tools/get-project-health.d.ts +112 -0
  84. package/dist/tools/get-project-health.d.ts.map +1 -0
  85. package/dist/tools/get-workspace-insights.d.ts +65 -0
  86. package/dist/tools/get-workspace-insights.d.ts.map +1 -0
  87. package/dist/tools/list-workspaces.d.ts +54 -0
  88. package/dist/tools/list-workspaces.d.ts.map +1 -0
  89. package/dist/tools/manage-assignments.d.ts +72 -0
  90. package/dist/tools/manage-assignments.d.ts.map +1 -0
  91. package/dist/tools/project-management.d.ts +78 -0
  92. package/dist/tools/project-management.d.ts.map +1 -0
  93. package/dist/tools/project-move.d.ts +88 -0
  94. package/dist/tools/project-move.d.ts.map +1 -0
  95. package/dist/tools/reorder-objects.d.ts +50 -0
  96. package/dist/tools/reorder-objects.d.ts.map +1 -0
  97. package/dist/tools/reschedule-tasks.d.ts +78 -0
  98. package/dist/tools/reschedule-tasks.d.ts.map +1 -0
  99. package/dist/tools/search.d.ts +43 -0
  100. package/dist/tools/search.d.ts.map +1 -0
  101. package/dist/tools/uncomplete-tasks.d.ts +42 -0
  102. package/dist/tools/uncomplete-tasks.d.ts.map +1 -0
  103. package/dist/tools/update-comments.d.ts +87 -0
  104. package/dist/tools/update-comments.d.ts.map +1 -0
  105. package/dist/tools/update-filters.d.ts +106 -0
  106. package/dist/tools/update-filters.d.ts.map +1 -0
  107. package/dist/tools/update-labels.d.ts +122 -0
  108. package/dist/tools/update-labels.d.ts.map +1 -0
  109. package/dist/tools/update-projects.d.ts +120 -0
  110. package/dist/tools/update-projects.d.ts.map +1 -0
  111. package/dist/tools/update-reminders.d.ts +148 -0
  112. package/dist/tools/update-reminders.d.ts.map +1 -0
  113. package/dist/tools/update-sections.d.ts +42 -0
  114. package/dist/tools/update-sections.d.ts.map +1 -0
  115. package/dist/tools/update-tasks.d.ts +113 -0
  116. package/dist/tools/update-tasks.d.ts.map +1 -0
  117. package/dist/tools/user-info.d.ts +57 -0
  118. package/dist/tools/user-info.d.ts.map +1 -0
  119. package/dist/tools/view-attachment.d.ts +25 -0
  120. package/dist/tools/view-attachment.d.ts.map +1 -0
  121. package/dist/usage-tracking.d.ts +27 -0
  122. package/dist/usage-tracking.d.ts.map +1 -0
  123. package/dist/utils/assignment-validator.d.ts +69 -0
  124. package/dist/utils/assignment-validator.d.ts.map +1 -0
  125. package/dist/utils/colors.d.ts +68 -0
  126. package/dist/utils/colors.d.ts.map +1 -0
  127. package/dist/utils/constants.d.ts +53 -0
  128. package/dist/utils/constants.d.ts.map +1 -0
  129. package/dist/utils/date.d.ts +18 -0
  130. package/dist/utils/date.d.ts.map +1 -0
  131. package/dist/utils/duration-parser.d.ts +36 -0
  132. package/dist/utils/duration-parser.d.ts.map +1 -0
  133. package/dist/utils/filter-resolver.d.ts +27 -0
  134. package/dist/utils/filter-resolver.d.ts.map +1 -0
  135. package/dist/utils/labels.d.ts +13 -0
  136. package/dist/utils/labels.d.ts.map +1 -0
  137. package/dist/utils/output-schemas.d.ts +199 -0
  138. package/dist/utils/output-schemas.d.ts.map +1 -0
  139. package/dist/utils/priorities.d.ts +14 -0
  140. package/dist/utils/priorities.d.ts.map +1 -0
  141. package/dist/utils/reminder-schemas.d.ts +33 -0
  142. package/dist/utils/reminder-schemas.d.ts.map +1 -0
  143. package/dist/utils/response-builders.d.ts +93 -0
  144. package/dist/utils/response-builders.d.ts.map +1 -0
  145. package/dist/utils/retry.d.ts +10 -0
  146. package/dist/utils/retry.d.ts.map +1 -0
  147. package/dist/utils/sanitize-data.d.ts +10 -0
  148. package/dist/utils/sanitize-data.d.ts.map +1 -0
  149. package/dist/utils/schema-helpers.d.ts +10 -0
  150. package/dist/utils/schema-helpers.d.ts.map +1 -0
  151. package/dist/utils/test-helpers.d.ts +91 -0
  152. package/dist/utils/test-helpers.d.ts.map +1 -0
  153. package/dist/utils/tool-names.d.ts +56 -0
  154. package/dist/utils/tool-names.d.ts.map +1 -0
  155. package/dist/utils/user-resolver.d.ts +39 -0
  156. package/dist/utils/user-resolver.d.ts.map +1 -0
  157. package/dist/utils/validate-todoist-token.d.ts +9 -0
  158. package/dist/utils/validate-todoist-token.d.ts.map +1 -0
  159. package/dist/utils/workspace-resolver.d.ts +31 -0
  160. package/dist/utils/workspace-resolver.d.ts.map +1 -0
  161. package/package.json +122 -8
  162. package/scripts/bump-plugin-version.mjs +14 -0
  163. package/scripts/run-tool.ts +240 -0
  164. package/scripts/test-executable.cjs +69 -0
  165. package/scripts/validate-schemas.ts +284 -0
@@ -0,0 +1,116 @@
1
+ import { z } from 'zod';
2
+ declare const findTasks: {
3
+ name: "find-tasks";
4
+ description: string;
5
+ parameters: {
6
+ labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
7
+ labelsOperator: z.ZodOptional<z.ZodEnum<{
8
+ or: "or";
9
+ and: "and";
10
+ }>>;
11
+ searchText: z.ZodOptional<z.ZodString>;
12
+ projectId: z.ZodOptional<z.ZodString>;
13
+ sectionId: z.ZodOptional<z.ZodString>;
14
+ parentId: z.ZodOptional<z.ZodString>;
15
+ responsibleUser: z.ZodOptional<z.ZodString>;
16
+ responsibleUserFiltering: z.ZodOptional<z.ZodEnum<{
17
+ assigned: "assigned";
18
+ unassignedOrMe: "unassignedOrMe";
19
+ all: "all";
20
+ }>>;
21
+ limit: z.ZodDefault<z.ZodNumber>;
22
+ cursor: z.ZodOptional<z.ZodString>;
23
+ filter: z.ZodOptional<z.ZodString>;
24
+ filterIdOrName: z.ZodOptional<z.ZodString>;
25
+ };
26
+ outputSchema: {
27
+ tasks: z.ZodArray<z.ZodObject<{
28
+ id: z.ZodString;
29
+ content: z.ZodString;
30
+ description: z.ZodString;
31
+ dueDate: z.ZodOptional<z.ZodString>;
32
+ recurring: z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>;
33
+ deadlineDate: z.ZodOptional<z.ZodString>;
34
+ priority: z.ZodEnum<{
35
+ p1: "p1";
36
+ p2: "p2";
37
+ p3: "p3";
38
+ p4: "p4";
39
+ }>;
40
+ projectId: z.ZodString;
41
+ sectionId: z.ZodOptional<z.ZodString>;
42
+ parentId: z.ZodOptional<z.ZodString>;
43
+ labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
44
+ duration: z.ZodOptional<z.ZodString>;
45
+ responsibleUid: z.ZodOptional<z.ZodString>;
46
+ isUncompletable: z.ZodOptional<z.ZodBoolean>;
47
+ assignedByUid: z.ZodOptional<z.ZodString>;
48
+ checked: z.ZodBoolean;
49
+ completedAt: z.ZodOptional<z.ZodString>;
50
+ }, z.core.$strip>>;
51
+ nextCursor: z.ZodOptional<z.ZodString>;
52
+ totalCount: z.ZodNumber;
53
+ hasMore: z.ZodBoolean;
54
+ appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
55
+ };
56
+ annotations: {
57
+ readOnlyHint: true;
58
+ destructiveHint: false;
59
+ idempotentHint: true;
60
+ };
61
+ execute(args: {
62
+ limit: number;
63
+ labels?: string[] | undefined;
64
+ labelsOperator?: "or" | "and" | undefined;
65
+ searchText?: string | undefined;
66
+ projectId?: string | undefined;
67
+ sectionId?: string | undefined;
68
+ parentId?: string | undefined;
69
+ responsibleUser?: string | undefined;
70
+ responsibleUserFiltering?: "assigned" | "unassignedOrMe" | "all" | undefined;
71
+ cursor?: string | undefined;
72
+ filter?: string | undefined;
73
+ filterIdOrName?: string | undefined;
74
+ }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{
75
+ textContent: string;
76
+ structuredContent: {
77
+ tasks: {
78
+ id: string;
79
+ content: string;
80
+ description: string;
81
+ dueDate: string | undefined;
82
+ recurring: string | boolean;
83
+ deadlineDate: string | undefined;
84
+ priority: "p1" | "p2" | "p3" | "p4";
85
+ projectId: string;
86
+ sectionId: string | undefined;
87
+ parentId: string | undefined;
88
+ labels: string[];
89
+ duration: string | undefined;
90
+ responsibleUid: string | undefined;
91
+ assignedByUid: string | undefined;
92
+ checked: boolean;
93
+ completedAt: string | undefined;
94
+ }[];
95
+ nextCursor: string | undefined;
96
+ totalCount: number;
97
+ hasMore: boolean;
98
+ appliedFilters: {
99
+ limit: number;
100
+ labels?: string[] | undefined;
101
+ labelsOperator?: "or" | "and" | undefined;
102
+ searchText?: string | undefined;
103
+ projectId?: string | undefined;
104
+ sectionId?: string | undefined;
105
+ parentId?: string | undefined;
106
+ responsibleUser?: string | undefined;
107
+ responsibleUserFiltering?: "assigned" | "unassignedOrMe" | "all" | undefined;
108
+ cursor?: string | undefined;
109
+ filter?: string | undefined;
110
+ filterIdOrName?: string | undefined;
111
+ };
112
+ };
113
+ }>;
114
+ };
115
+ export { findTasks };
116
+ //# sourceMappingURL=find-tasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-tasks.d.ts","sourceRoot":"","sources":["../../src/tools/find-tasks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAoFvB,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwNgD,CAAA;AA2K/D,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -0,0 +1,123 @@
1
+ import { TodoistApi } from '@doist/todoist-sdk';
2
+ import { z } from 'zod';
3
+ import { mapTask } from '../tool-helpers.js';
4
+ import { SectionSummary } from '../utils/output-schemas.js';
5
+ type ProjectStructure = {
6
+ id: string;
7
+ name: string;
8
+ parentId?: string;
9
+ folderId?: string;
10
+ childOrder: number;
11
+ sections: SectionSummary[];
12
+ children: ProjectStructure[];
13
+ };
14
+ type AccountOverviewStructured = Record<string, unknown> & {
15
+ type: 'account_overview';
16
+ inbox: {
17
+ id: string;
18
+ name: string;
19
+ sections: SectionSummary[];
20
+ } | null;
21
+ projects: ProjectStructure[];
22
+ totalProjects: number;
23
+ totalSections: number;
24
+ hasNestedProjects: boolean;
25
+ };
26
+ type ProjectOverviewStructured = Record<string, unknown> & {
27
+ type: 'project_overview';
28
+ project: {
29
+ id: string;
30
+ name: string;
31
+ };
32
+ sections: SectionSummary[];
33
+ tasks: Array<ReturnType<typeof mapTask> & {
34
+ children: never[];
35
+ }>;
36
+ stats: {
37
+ totalTasks: number;
38
+ totalSections: number;
39
+ tasksWithoutSection: number;
40
+ };
41
+ };
42
+ declare const getOverview: {
43
+ name: "get-overview";
44
+ description: string;
45
+ parameters: {
46
+ projectId: z.ZodOptional<z.ZodString>;
47
+ };
48
+ outputSchema: {
49
+ type: z.ZodEnum<{
50
+ account_overview: "account_overview";
51
+ project_overview: "project_overview";
52
+ }>;
53
+ totalProjects: z.ZodOptional<z.ZodNumber>;
54
+ totalTasks: z.ZodOptional<z.ZodNumber>;
55
+ totalSections: z.ZodOptional<z.ZodNumber>;
56
+ tasksWithoutSection: z.ZodOptional<z.ZodNumber>;
57
+ projectInfo: z.ZodOptional<z.ZodObject<{
58
+ id: z.ZodString;
59
+ name: z.ZodString;
60
+ isShared: z.ZodBoolean;
61
+ isFavorite: z.ZodBoolean;
62
+ }, z.core.$strip>>;
63
+ hasNestedProjects: z.ZodOptional<z.ZodBoolean>;
64
+ inbox: z.ZodOptional<z.ZodNullable<z.ZodObject<{
65
+ id: z.ZodString;
66
+ name: z.ZodString;
67
+ sections: z.ZodArray<z.ZodObject<{
68
+ id: z.ZodString;
69
+ name: z.ZodString;
70
+ }, z.core.$strip>>;
71
+ }, z.core.$strip>>>;
72
+ projects: z.ZodOptional<z.ZodArray<z.ZodLazy<z.ZodType<{
73
+ id: string;
74
+ name: string;
75
+ parentId?: string;
76
+ folderId?: string;
77
+ childOrder: number;
78
+ sections: {
79
+ id: string;
80
+ name: string;
81
+ }[];
82
+ children: unknown[];
83
+ }, unknown, z.core.$ZodTypeInternals<{
84
+ id: string;
85
+ name: string;
86
+ parentId?: string;
87
+ folderId?: string;
88
+ childOrder: number;
89
+ sections: {
90
+ id: string;
91
+ name: string;
92
+ }[];
93
+ children: unknown[];
94
+ }, unknown>>>>>;
95
+ project: z.ZodOptional<z.ZodObject<{
96
+ id: z.ZodString;
97
+ name: z.ZodString;
98
+ }, z.core.$strip>>;
99
+ sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
100
+ id: z.ZodString;
101
+ name: z.ZodString;
102
+ }, z.core.$strip>>>;
103
+ tasks: z.ZodOptional<z.ZodArray<z.ZodAny>>;
104
+ stats: z.ZodOptional<z.ZodObject<{
105
+ totalTasks: z.ZodNumber;
106
+ totalSections: z.ZodNumber;
107
+ tasksWithoutSection: z.ZodNumber;
108
+ }, z.core.$strip>>;
109
+ };
110
+ annotations: {
111
+ readOnlyHint: true;
112
+ destructiveHint: false;
113
+ idempotentHint: true;
114
+ };
115
+ execute(args: {
116
+ projectId?: string | undefined;
117
+ }, client: TodoistApi): Promise<{
118
+ textContent: string;
119
+ structuredContent: AccountOverviewStructured | ProjectOverviewStructured;
120
+ }>;
121
+ };
122
+ export { type AccountOverviewStructured, getOverview, type ProjectOverviewStructured };
123
+ //# sourceMappingURL=get-overview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-overview.d.ts","sourceRoot":"","sources":["../../src/tools/get-overview.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,OAAO,EAAgB,MAAM,oBAAoB,CAAA;AAE1D,OAAO,EAAiB,KAAK,cAAc,EAAoB,MAAM,4BAA4B,CAAA;AAkOjG,KAAK,gBAAgB,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,QAAQ,EAAE,gBAAgB,EAAE,CAAA;CAC/B,CAAA;AAED,KAAK,yBAAyB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACvD,IAAI,EAAE,kBAAkB,CAAA;IACxB,KAAK,EAAE;QACH,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,QAAQ,EAAE,cAAc,EAAE,CAAA;KAC7B,GAAG,IAAI,CAAA;IACR,QAAQ,EAAE,gBAAgB,EAAE,CAAA;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,KAAK,yBAAyB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACvD,IAAI,EAAE,kBAAkB,CAAA;IACxB,OAAO,EAAE;QACL,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;KACf,CAAA;IACD,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,GAAG;QAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;KAAE,CAAC,CAAA;IAChE,KAAK,EAAE;QACH,UAAU,EAAE,MAAM,CAAA;QAClB,aAAa,EAAE,MAAM,CAAA;QACrB,mBAAmB,EAAE,MAAM,CAAA;KAC9B,CAAA;CACJ,CAAA;AAmKD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA3ZT,MAAM;kBACJ,MAAM;uBACD,MAAM;uBACN,MAAM;wBACL,MAAM;sBACR;gBAAE,EAAE,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAA;aAAE,EAAE;sBAC9B,OAAO,EAAE;;gBANf,MAAM;kBACJ,MAAM;uBACD,MAAM;uBACN,MAAM;wBACL,MAAM;sBACR;gBAAE,EAAE,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAA;aAAE,EAAE;sBAC9B,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsawC,CAAA;AAE/D,OAAO,EAAE,KAAK,yBAAyB,EAAE,WAAW,EAAE,KAAK,yBAAyB,EAAE,CAAA"}
@@ -0,0 +1,160 @@
1
+ import { z } from 'zod';
2
+ declare const getProductivityStats: {
3
+ name: "get-productivity-stats";
4
+ description: string;
5
+ parameters: {};
6
+ outputSchema: {
7
+ completedCount: z.ZodNumber;
8
+ daysItems: z.ZodArray<z.ZodObject<{
9
+ date: z.ZodString;
10
+ totalCompleted: z.ZodNumber;
11
+ items: z.ZodArray<z.ZodObject<{
12
+ id: z.ZodString;
13
+ completed: z.ZodNumber;
14
+ }, z.core.$strip>>;
15
+ }, z.core.$strip>>;
16
+ weekItems: z.ZodArray<z.ZodObject<{
17
+ from: z.ZodString;
18
+ to: z.ZodString;
19
+ totalCompleted: z.ZodNumber;
20
+ items: z.ZodArray<z.ZodObject<{
21
+ id: z.ZodString;
22
+ completed: z.ZodNumber;
23
+ }, z.core.$strip>>;
24
+ }, z.core.$strip>>;
25
+ goals: z.ZodObject<{
26
+ dailyGoal: z.ZodNumber;
27
+ weeklyGoal: z.ZodNumber;
28
+ currentDailyStreak: z.ZodObject<{
29
+ count: z.ZodNumber;
30
+ start: z.ZodString;
31
+ end: z.ZodString;
32
+ }, z.core.$strip>;
33
+ currentWeeklyStreak: z.ZodObject<{
34
+ count: z.ZodNumber;
35
+ start: z.ZodString;
36
+ end: z.ZodString;
37
+ }, z.core.$strip>;
38
+ lastDailyStreak: z.ZodObject<{
39
+ count: z.ZodNumber;
40
+ start: z.ZodString;
41
+ end: z.ZodString;
42
+ }, z.core.$strip>;
43
+ lastWeeklyStreak: z.ZodObject<{
44
+ count: z.ZodNumber;
45
+ start: z.ZodString;
46
+ end: z.ZodString;
47
+ }, z.core.$strip>;
48
+ maxDailyStreak: z.ZodObject<{
49
+ count: z.ZodNumber;
50
+ start: z.ZodString;
51
+ end: z.ZodString;
52
+ }, z.core.$strip>;
53
+ maxWeeklyStreak: z.ZodObject<{
54
+ count: z.ZodNumber;
55
+ start: z.ZodString;
56
+ end: z.ZodString;
57
+ }, z.core.$strip>;
58
+ vacationMode: z.ZodBoolean;
59
+ karmaDisabled: z.ZodBoolean;
60
+ }, z.core.$strip>;
61
+ karma: z.ZodNumber;
62
+ karmaTrend: z.ZodString;
63
+ karmaLastUpdate: z.ZodNumber;
64
+ karmaGraphData: z.ZodArray<z.ZodObject<{
65
+ date: z.ZodString;
66
+ karmaAvg: z.ZodNumber;
67
+ }, z.core.$strip>>;
68
+ karmaUpdateReasons: z.ZodArray<z.ZodObject<{
69
+ time: z.ZodString;
70
+ newKarma: z.ZodNumber;
71
+ positiveKarma: z.ZodNumber;
72
+ negativeKarma: z.ZodNumber;
73
+ positiveKarmaReasons: z.ZodArray<z.ZodAny>;
74
+ negativeKarmaReasons: z.ZodArray<z.ZodAny>;
75
+ }, z.core.$strip>>;
76
+ projectColors: z.ZodRecord<z.ZodString, z.ZodString>;
77
+ };
78
+ annotations: {
79
+ readOnlyHint: true;
80
+ destructiveHint: false;
81
+ idempotentHint: true;
82
+ };
83
+ execute(_args: Record<string, never>, client: import('@doist/todoist-sdk').TodoistApi): Promise<{
84
+ textContent: string;
85
+ structuredContent: {
86
+ completedCount: number;
87
+ daysItems: {
88
+ items: {
89
+ id: string;
90
+ completed: number;
91
+ }[];
92
+ totalCompleted: number;
93
+ date: string;
94
+ }[];
95
+ weekItems: {
96
+ items: {
97
+ id: string;
98
+ completed: number;
99
+ }[];
100
+ totalCompleted: number;
101
+ from: string;
102
+ to: string;
103
+ }[];
104
+ goals: {
105
+ dailyGoal: number;
106
+ weeklyGoal: number;
107
+ currentDailyStreak: {
108
+ count: number;
109
+ start: string;
110
+ end: string;
111
+ };
112
+ currentWeeklyStreak: {
113
+ count: number;
114
+ start: string;
115
+ end: string;
116
+ };
117
+ lastDailyStreak: {
118
+ count: number;
119
+ start: string;
120
+ end: string;
121
+ };
122
+ lastWeeklyStreak: {
123
+ count: number;
124
+ start: string;
125
+ end: string;
126
+ };
127
+ maxDailyStreak: {
128
+ count: number;
129
+ start: string;
130
+ end: string;
131
+ };
132
+ maxWeeklyStreak: {
133
+ count: number;
134
+ start: string;
135
+ end: string;
136
+ };
137
+ vacationMode: boolean;
138
+ karmaDisabled: boolean;
139
+ };
140
+ karma: number;
141
+ karmaTrend: string;
142
+ karmaLastUpdate: number;
143
+ karmaGraphData: {
144
+ date: string;
145
+ karmaAvg: number;
146
+ }[];
147
+ karmaUpdateReasons: {
148
+ time: string;
149
+ newKarma: number;
150
+ positiveKarma: number;
151
+ negativeKarma: number;
152
+ positiveKarmaReasons: any[];
153
+ negativeKarmaReasons: any[];
154
+ }[];
155
+ projectColors: Record<string, string>;
156
+ };
157
+ }>;
158
+ };
159
+ export { getProductivityStats };
160
+ //# sourceMappingURL=get-productivity-stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-productivity-stats.d.ts","sourceRoot":"","sources":["../../src/tools/get-productivity-stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAkFvB,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CqC,CAAA;AAyC/D,OAAO,EAAE,oBAAoB,EAAE,CAAA"}
@@ -0,0 +1,48 @@
1
+ import { z } from 'zod';
2
+ declare const getProjectActivityStats: {
3
+ name: "get-project-activity-stats";
4
+ description: string;
5
+ parameters: {
6
+ projectId: z.ZodString;
7
+ weeks: z.ZodOptional<z.ZodNumber>;
8
+ includeWeeklyCounts: z.ZodOptional<z.ZodBoolean>;
9
+ };
10
+ outputSchema: {
11
+ projectId: z.ZodString;
12
+ dayItems: z.ZodArray<z.ZodObject<{
13
+ date: z.ZodString;
14
+ totalCount: z.ZodNumber;
15
+ }, z.core.$strip>>;
16
+ weekItems: z.ZodNullable<z.ZodArray<z.ZodObject<{
17
+ fromDate: z.ZodString;
18
+ toDate: z.ZodString;
19
+ totalCount: z.ZodNumber;
20
+ }, z.core.$strip>>>;
21
+ };
22
+ annotations: {
23
+ readOnlyHint: true;
24
+ destructiveHint: false;
25
+ idempotentHint: true;
26
+ };
27
+ execute(args: {
28
+ projectId: string;
29
+ weeks?: number | undefined;
30
+ includeWeeklyCounts?: boolean | undefined;
31
+ }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{
32
+ textContent: string;
33
+ structuredContent: {
34
+ projectId: string;
35
+ dayItems: {
36
+ date: string;
37
+ totalCount: number;
38
+ }[];
39
+ weekItems: {
40
+ fromDate: string;
41
+ toDate: string;
42
+ totalCount: number;
43
+ }[] | null;
44
+ };
45
+ }>;
46
+ };
47
+ export { getProjectActivityStats };
48
+ //# sourceMappingURL=get-project-activity-stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-project-activity-stats.d.ts","sourceRoot":"","sources":["../../src/tools/get-project-activity-stats.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAgEvB,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BkC,CAAA;AAE/D,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
@@ -0,0 +1,112 @@
1
+ import { TodoistApi } from '@doist/todoist-sdk';
2
+ import { z } from 'zod';
3
+ declare const getProjectHealth: {
4
+ name: "get-project-health";
5
+ description: string;
6
+ parameters: {
7
+ projectId: z.ZodString;
8
+ includeContext: z.ZodDefault<z.ZodBoolean>;
9
+ };
10
+ outputSchema: {
11
+ projectId: z.ZodString;
12
+ projectName: z.ZodString;
13
+ progress: z.ZodObject<{
14
+ completedCount: z.ZodNumber;
15
+ activeCount: z.ZodNumber;
16
+ progressPercent: z.ZodNumber;
17
+ }, z.core.$strip>;
18
+ health: z.ZodObject<{
19
+ status: z.ZodEnum<{
20
+ UNKNOWN: "UNKNOWN";
21
+ ON_TRACK: "ON_TRACK";
22
+ AT_RISK: "AT_RISK";
23
+ CRITICAL: "CRITICAL";
24
+ EXCELLENT: "EXCELLENT";
25
+ ERROR: "ERROR";
26
+ }>;
27
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
28
+ descriptionSummary: z.ZodOptional<z.ZodNullable<z.ZodString>>;
29
+ taskRecommendations: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
30
+ taskId: z.ZodString;
31
+ recommendation: z.ZodString;
32
+ }, z.core.$strip>>>>;
33
+ isStale: z.ZodBoolean;
34
+ updateInProgress: z.ZodBoolean;
35
+ updatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ }, z.core.$strip>;
37
+ context: z.ZodOptional<z.ZodObject<{
38
+ projectDescription: z.ZodNullable<z.ZodString>;
39
+ projectMetrics: z.ZodObject<{
40
+ totalTasks: z.ZodNumber;
41
+ completedTasks: z.ZodNumber;
42
+ overdueTasks: z.ZodNumber;
43
+ tasksCreatedThisWeek: z.ZodNumber;
44
+ tasksCompletedThisWeek: z.ZodNumber;
45
+ averageCompletionTime: z.ZodNullable<z.ZodNumber>;
46
+ }, z.core.$strip>;
47
+ tasks: z.ZodArray<z.ZodObject<{
48
+ id: z.ZodString;
49
+ content: z.ZodString;
50
+ priority: z.ZodString;
51
+ due: z.ZodOptional<z.ZodNullable<z.ZodString>>;
52
+ deadline: z.ZodOptional<z.ZodNullable<z.ZodString>>;
53
+ isCompleted: z.ZodBoolean;
54
+ labels: z.ZodArray<z.ZodString>;
55
+ }, z.core.$strip>>;
56
+ }, z.core.$strip>>;
57
+ };
58
+ annotations: {
59
+ readOnlyHint: true;
60
+ destructiveHint: false;
61
+ idempotentHint: true;
62
+ };
63
+ execute(args: {
64
+ projectId: string;
65
+ includeContext: boolean;
66
+ }, client: TodoistApi): Promise<{
67
+ textContent: string;
68
+ structuredContent: {
69
+ projectId: string;
70
+ projectName: string;
71
+ progress: {
72
+ completedCount: number;
73
+ activeCount: number;
74
+ progressPercent: number;
75
+ };
76
+ health: {
77
+ status: "UNKNOWN" | "ON_TRACK" | "AT_RISK" | "CRITICAL" | "EXCELLENT" | "ERROR";
78
+ description: string | null;
79
+ descriptionSummary: string | null;
80
+ taskRecommendations: {
81
+ taskId: string;
82
+ recommendation: string;
83
+ }[] | null;
84
+ isStale: boolean;
85
+ updateInProgress: boolean;
86
+ updatedAt: string | null;
87
+ };
88
+ context: {
89
+ projectDescription: string | null;
90
+ projectMetrics: {
91
+ totalTasks: number;
92
+ completedTasks: number;
93
+ overdueTasks: number;
94
+ tasksCreatedThisWeek: number;
95
+ tasksCompletedThisWeek: number;
96
+ averageCompletionTime: number | null;
97
+ };
98
+ tasks: {
99
+ id: string;
100
+ content: string;
101
+ priority: string;
102
+ due: string | null;
103
+ deadline: string | null;
104
+ isCompleted: boolean;
105
+ labels: string[];
106
+ }[];
107
+ } | undefined;
108
+ };
109
+ }>;
110
+ };
111
+ export { getProjectHealth };
112
+ //# sourceMappingURL=get-project-health.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-project-health.d.ts","sourceRoot":"","sources":["../../src/tools/get-project-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAkMvB,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DyC,CAAA;AAE/D,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
@@ -0,0 +1,65 @@
1
+ import { z } from 'zod';
2
+ declare const getWorkspaceInsights: {
3
+ name: "get-workspace-insights";
4
+ description: string;
5
+ parameters: {
6
+ workspaceIdOrName: z.ZodString;
7
+ projectIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
8
+ };
9
+ outputSchema: {
10
+ workspaceId: z.ZodString;
11
+ workspaceName: z.ZodString;
12
+ folderId: z.ZodNullable<z.ZodString>;
13
+ projectInsights: z.ZodArray<z.ZodObject<{
14
+ projectId: z.ZodString;
15
+ health: z.ZodNullable<z.ZodObject<{
16
+ status: z.ZodEnum<{
17
+ UNKNOWN: "UNKNOWN";
18
+ ON_TRACK: "ON_TRACK";
19
+ AT_RISK: "AT_RISK";
20
+ CRITICAL: "CRITICAL";
21
+ EXCELLENT: "EXCELLENT";
22
+ ERROR: "ERROR";
23
+ }>;
24
+ isStale: z.ZodBoolean;
25
+ updateInProgress: z.ZodBoolean;
26
+ }, z.core.$strip>>;
27
+ progress: z.ZodNullable<z.ZodObject<{
28
+ completedCount: z.ZodNumber;
29
+ activeCount: z.ZodNumber;
30
+ progressPercent: z.ZodNumber;
31
+ }, z.core.$strip>>;
32
+ }, z.core.$strip>>;
33
+ };
34
+ annotations: {
35
+ readOnlyHint: true;
36
+ destructiveHint: false;
37
+ idempotentHint: true;
38
+ };
39
+ execute(args: {
40
+ workspaceIdOrName: string;
41
+ projectIds?: string[] | undefined;
42
+ }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{
43
+ textContent: string;
44
+ structuredContent: {
45
+ workspaceId: string;
46
+ workspaceName: string;
47
+ folderId: string | null;
48
+ projectInsights: {
49
+ projectId: string;
50
+ health: {
51
+ status: "UNKNOWN" | "ON_TRACK" | "AT_RISK" | "CRITICAL" | "EXCELLENT" | "ERROR";
52
+ isStale: boolean;
53
+ updateInProgress: boolean;
54
+ } | null;
55
+ progress: {
56
+ completedCount: number;
57
+ activeCount: number;
58
+ progressPercent: number;
59
+ } | null;
60
+ }[];
61
+ };
62
+ }>;
63
+ };
64
+ export { getWorkspaceInsights };
65
+ //# sourceMappingURL=get-workspace-insights.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-workspace-insights.d.ts","sourceRoot":"","sources":["../../src/tools/get-workspace-insights.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAkDvB,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0DqC,CAAA;AAE/D,OAAO,EAAE,oBAAoB,EAAE,CAAA"}