@todoist/mcp 0.0.1 → 15.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/LICENSE +21 -0
- package/README.md +217 -29
- package/dist/filter-helpers.d.ts +53 -0
- package/dist/filter-helpers.d.ts.map +1 -0
- package/dist/http-app.d.ts +28 -0
- package/dist/http-app.d.ts.map +1 -0
- package/dist/index.d.ts +4347 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/main-http.d.ts +3 -0
- package/dist/main-http.d.ts.map +1 -0
- package/dist/main-http.js +133 -0
- package/dist/main.d.ts +3 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +16 -0
- package/dist/mcp-apps/index.html +116 -0
- package/dist/mcp-helpers.d.ts +62 -0
- package/dist/mcp-helpers.d.ts.map +1 -0
- package/dist/mcp-server-y4HhlBJW.js +8152 -0
- package/dist/mcp-server.d.ts +16 -0
- package/dist/mcp-server.d.ts.map +1 -0
- package/dist/middleware/require-trusted-host.d.ts +44 -0
- package/dist/middleware/require-trusted-host.d.ts.map +1 -0
- package/dist/middleware/require-valid-todoist-token.d.ts +39 -0
- package/dist/middleware/require-valid-todoist-token.d.ts.map +1 -0
- package/dist/prompts/productivity-analysis.d.ts +58 -0
- package/dist/prompts/productivity-analysis.d.ts.map +1 -0
- package/dist/require-valid-todoist-token-I1jh7sbd.js +63 -0
- package/dist/todoist-tool.d.ts +15 -0
- package/dist/todoist-tool.d.ts.map +1 -0
- package/dist/tool-execution-error.d.ts +27 -0
- package/dist/tool-execution-error.d.ts.map +1 -0
- package/dist/tool-helpers.d.ts +318 -0
- package/dist/tool-helpers.d.ts.map +1 -0
- package/dist/tool-registry.d.ts +4307 -0
- package/dist/tool-registry.d.ts.map +1 -0
- package/dist/tools/add-comments.d.ts +104 -0
- package/dist/tools/add-comments.d.ts.map +1 -0
- package/dist/tools/add-filters.d.ts +113 -0
- package/dist/tools/add-filters.d.ts.map +1 -0
- package/dist/tools/add-labels.d.ts +107 -0
- package/dist/tools/add-labels.d.ts.map +1 -0
- package/dist/tools/add-projects.d.ts +134 -0
- package/dist/tools/add-projects.d.ts.map +1 -0
- package/dist/tools/add-reminders.d.ts +174 -0
- package/dist/tools/add-reminders.d.ts.map +1 -0
- package/dist/tools/add-sections.d.ts +61 -0
- package/dist/tools/add-sections.d.ts.map +1 -0
- package/dist/tools/add-tasks.d.ts +123 -0
- package/dist/tools/add-tasks.d.ts.map +1 -0
- package/dist/tools/analyze-project-health.d.ts +45 -0
- package/dist/tools/analyze-project-health.d.ts.map +1 -0
- package/dist/tools/complete-tasks.d.ts +42 -0
- package/dist/tools/complete-tasks.d.ts.map +1 -0
- package/dist/tools/delete-object.d.ts +54 -0
- package/dist/tools/delete-object.d.ts.map +1 -0
- package/dist/tools/export-project-template.d.ts +54 -0
- package/dist/tools/export-project-template.d.ts.map +1 -0
- package/dist/tools/fetch-object.d.ts +243 -0
- package/dist/tools/fetch-object.d.ts.map +1 -0
- package/dist/tools/fetch.d.ts +41 -0
- package/dist/tools/fetch.d.ts.map +1 -0
- package/dist/tools/find-activity.d.ts +98 -0
- package/dist/tools/find-activity.d.ts.map +1 -0
- package/dist/tools/find-comments.d.ts +91 -0
- package/dist/tools/find-comments.d.ts.map +1 -0
- package/dist/tools/find-completed-tasks.d.ts +119 -0
- package/dist/tools/find-completed-tasks.d.ts.map +1 -0
- package/dist/tools/find-filters.d.ts +95 -0
- package/dist/tools/find-filters.d.ts.map +1 -0
- package/dist/tools/find-labels.d.ts +81 -0
- package/dist/tools/find-labels.d.ts.map +1 -0
- package/dist/tools/find-project-collaborators.d.ts +94 -0
- package/dist/tools/find-project-collaborators.d.ts.map +1 -0
- package/dist/tools/find-projects.d.ts +98 -0
- package/dist/tools/find-projects.d.ts.map +1 -0
- package/dist/tools/find-reminders.d.ts +99 -0
- package/dist/tools/find-reminders.d.ts.map +1 -0
- package/dist/tools/find-sections.d.ts +45 -0
- package/dist/tools/find-sections.d.ts.map +1 -0
- package/dist/tools/find-tasks-by-date.d.ts +137 -0
- package/dist/tools/find-tasks-by-date.d.ts.map +1 -0
- package/dist/tools/find-tasks.d.ts +120 -0
- package/dist/tools/find-tasks.d.ts.map +1 -0
- package/dist/tools/get-overview.d.ts +121 -0
- package/dist/tools/get-overview.d.ts.map +1 -0
- package/dist/tools/get-productivity-stats.d.ts +160 -0
- package/dist/tools/get-productivity-stats.d.ts.map +1 -0
- package/dist/tools/get-project-activity-stats.d.ts +48 -0
- package/dist/tools/get-project-activity-stats.d.ts.map +1 -0
- package/dist/tools/get-project-health.d.ts +104 -0
- package/dist/tools/get-project-health.d.ts.map +1 -0
- package/dist/tools/get-user-status.d.ts +35 -0
- package/dist/tools/get-user-status.d.ts.map +1 -0
- package/dist/tools/get-workspace-insights.d.ts +63 -0
- package/dist/tools/get-workspace-insights.d.ts.map +1 -0
- package/dist/tools/import-project-template.d.ts +148 -0
- package/dist/tools/import-project-template.d.ts.map +1 -0
- package/dist/tools/list-workspaces.d.ts +54 -0
- package/dist/tools/list-workspaces.d.ts.map +1 -0
- package/dist/tools/manage-assignments.d.ts +73 -0
- package/dist/tools/manage-assignments.d.ts.map +1 -0
- package/dist/tools/project-management.d.ts +82 -0
- package/dist/tools/project-management.d.ts.map +1 -0
- package/dist/tools/project-move.d.ts +92 -0
- package/dist/tools/project-move.d.ts.map +1 -0
- package/dist/tools/reorder-objects.d.ts +61 -0
- package/dist/tools/reorder-objects.d.ts.map +1 -0
- package/dist/tools/reschedule-tasks.d.ts +95 -0
- package/dist/tools/reschedule-tasks.d.ts.map +1 -0
- package/dist/tools/search.d.ts +43 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/set-user-status.d.ts +51 -0
- package/dist/tools/set-user-status.d.ts.map +1 -0
- package/dist/tools/uncomplete-tasks.d.ts +42 -0
- package/dist/tools/uncomplete-tasks.d.ts.map +1 -0
- package/dist/tools/update-comments.d.ts +100 -0
- package/dist/tools/update-comments.d.ts.map +1 -0
- package/dist/tools/update-filters.d.ts +121 -0
- package/dist/tools/update-filters.d.ts.map +1 -0
- package/dist/tools/update-labels.d.ts +133 -0
- package/dist/tools/update-labels.d.ts.map +1 -0
- package/dist/tools/update-projects.d.ts +138 -0
- package/dist/tools/update-projects.d.ts.map +1 -0
- package/dist/tools/update-reminders.d.ts +176 -0
- package/dist/tools/update-reminders.d.ts.map +1 -0
- package/dist/tools/update-sections.d.ts +65 -0
- package/dist/tools/update-sections.d.ts.map +1 -0
- package/dist/tools/update-tasks.d.ts +135 -0
- package/dist/tools/update-tasks.d.ts.map +1 -0
- package/dist/tools/user-info.d.ts +57 -0
- package/dist/tools/user-info.d.ts.map +1 -0
- package/dist/tools/view-attachment.d.ts +25 -0
- package/dist/tools/view-attachment.d.ts.map +1 -0
- package/dist/usage-tracking.d.ts +36 -0
- package/dist/usage-tracking.d.ts.map +1 -0
- package/dist/utils/assignment-validator.d.ts +69 -0
- package/dist/utils/assignment-validator.d.ts.map +1 -0
- package/dist/utils/batch-failures.d.ts +25 -0
- package/dist/utils/batch-failures.d.ts.map +1 -0
- package/dist/utils/children.d.ts +68 -0
- package/dist/utils/children.d.ts.map +1 -0
- package/dist/utils/colors.d.ts +68 -0
- package/dist/utils/colors.d.ts.map +1 -0
- package/dist/utils/comment-recipients.d.ts +35 -0
- package/dist/utils/comment-recipients.d.ts.map +1 -0
- package/dist/utils/concurrency.d.ts +35 -0
- package/dist/utils/concurrency.d.ts.map +1 -0
- package/dist/utils/constants.d.ts +93 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/date.d.ts +18 -0
- package/dist/utils/date.d.ts.map +1 -0
- package/dist/utils/duration-parser.d.ts +39 -0
- package/dist/utils/duration-parser.d.ts.map +1 -0
- package/dist/utils/filter-description.d.ts +16 -0
- package/dist/utils/filter-description.d.ts.map +1 -0
- package/dist/utils/filter-resolver.d.ts +27 -0
- package/dist/utils/filter-resolver.d.ts.map +1 -0
- package/dist/utils/host.d.ts +6 -0
- package/dist/utils/host.d.ts.map +1 -0
- package/dist/utils/labels.d.ts +13 -0
- package/dist/utils/labels.d.ts.map +1 -0
- package/dist/utils/move-planner.d.ts +63 -0
- package/dist/utils/move-planner.d.ts.map +1 -0
- package/dist/utils/order-keys.d.ts +36 -0
- package/dist/utils/order-keys.d.ts.map +1 -0
- package/dist/utils/output-schemas.d.ts +209 -0
- package/dist/utils/output-schemas.d.ts.map +1 -0
- package/dist/utils/personal-project-limit.d.ts +31 -0
- package/dist/utils/personal-project-limit.d.ts.map +1 -0
- package/dist/utils/priorities.d.ts +14 -0
- package/dist/utils/priorities.d.ts.map +1 -0
- package/dist/utils/reminder-recipients.d.ts +21 -0
- package/dist/utils/reminder-recipients.d.ts.map +1 -0
- package/dist/utils/reminder-schemas.d.ts +41 -0
- package/dist/utils/reminder-schemas.d.ts.map +1 -0
- package/dist/utils/response-builders.d.ts +103 -0
- package/dist/utils/response-builders.d.ts.map +1 -0
- package/dist/utils/retry.d.ts +39 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/schema-helpers.d.ts +10 -0
- package/dist/utils/schema-helpers.d.ts.map +1 -0
- package/dist/utils/sync-commands.d.ts +21 -0
- package/dist/utils/sync-commands.d.ts.map +1 -0
- package/dist/utils/test-helpers.d.ts +118 -0
- package/dist/utils/test-helpers.d.ts.map +1 -0
- package/dist/utils/tool-names.d.ts +60 -0
- package/dist/utils/tool-names.d.ts.map +1 -0
- package/dist/utils/user-resolver.d.ts +92 -0
- package/dist/utils/user-resolver.d.ts.map +1 -0
- package/dist/utils/user-status.d.ts +32 -0
- package/dist/utils/user-status.d.ts.map +1 -0
- package/dist/utils/validate-todoist-token.d.ts +17 -0
- package/dist/utils/validate-todoist-token.d.ts.map +1 -0
- package/dist/utils/workspace-resolver.d.ts +31 -0
- package/dist/utils/workspace-resolver.d.ts.map +1 -0
- package/package.json +115 -8
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { TodoistApi } from '@doist/todoist-sdk';
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/server';
|
|
3
|
+
import { AnyTodoistTool } from './todoist-tool.js';
|
|
4
|
+
/**
|
|
5
|
+
* Supported feature names that modify tool behavior.
|
|
6
|
+
*
|
|
7
|
+
* Currently supported:
|
|
8
|
+
* - `'strip_emails'`: Strips email addresses from collaborator tool outputs
|
|
9
|
+
* (affects: find-project-collaborators, find-completed-tasks). Useful for
|
|
10
|
+
* clients like ChatGPT that should not have access to user emails.
|
|
11
|
+
*/
|
|
12
|
+
declare const FEATURE_NAMES: {
|
|
13
|
+
/**
|
|
14
|
+
* Strips email addresses from tool outputs that expose user data.
|
|
15
|
+
* Affects: find-project-collaborators, find-completed-tasks
|
|
16
|
+
*/
|
|
17
|
+
readonly STRIP_EMAILS: "strip_emails";
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Valid feature name values.
|
|
21
|
+
* @see FEATURE_NAMES for available options with documentation.
|
|
22
|
+
*/
|
|
23
|
+
type FeatureName = (typeof FEATURE_NAMES)[keyof typeof FEATURE_NAMES];
|
|
24
|
+
/**
|
|
25
|
+
* A feature that modifies tool behavior.
|
|
26
|
+
*/
|
|
27
|
+
type Feature = {
|
|
28
|
+
/**
|
|
29
|
+
* The feature name. Use {@link FEATURE_NAMES} for available options with intellisense.
|
|
30
|
+
*/
|
|
31
|
+
name: FeatureName;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Array of features to enable when creating the MCP server.
|
|
35
|
+
*/
|
|
36
|
+
type Features = Feature[];
|
|
37
|
+
/**
|
|
38
|
+
* Recursively strips email fields from an object structure.
|
|
39
|
+
* Used to remove sensitive email data from tool outputs for certain clients.
|
|
40
|
+
*/
|
|
41
|
+
declare function stripEmailsFromObject<T>(obj: T): T;
|
|
42
|
+
/**
|
|
43
|
+
* Strips email patterns from text content.
|
|
44
|
+
* Replaces email addresses with [email hidden] placeholder.
|
|
45
|
+
*/
|
|
46
|
+
declare function stripEmailsFromText(text: string): string;
|
|
47
|
+
/**
|
|
48
|
+
* Register Todoist tools in an MCP server.
|
|
49
|
+
*
|
|
50
|
+
* Schema caching, annotations, MCP Apps `_meta`, result shaping and turning a thrown error into
|
|
51
|
+
* an error result come from `@todoist/mcp-core`. What is Todoist's own is wired in here: the API
|
|
52
|
+
* client, retries, usage tracking, `strip_emails`, and the API error formatting. One registrar
|
|
53
|
+
* serves every tool, since none of that depends on the tool.
|
|
54
|
+
*/
|
|
55
|
+
declare function registerTools({ tools, server, client, features, }: {
|
|
56
|
+
tools: readonly AnyTodoistTool[];
|
|
57
|
+
server: McpServer;
|
|
58
|
+
client: TodoistApi;
|
|
59
|
+
features?: Features;
|
|
60
|
+
}): void;
|
|
61
|
+
export { FEATURE_NAMES, type Feature, type FeatureName, type Features, registerTools, stripEmailsFromObject, stripEmailsFromText, };
|
|
62
|
+
//# sourceMappingURL=mcp-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-helpers.d.ts","sourceRoot":"","sources":["../src/mcp-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAMvD;;;;;;;GAOG;AACH,QAAA,MAAM,aAAa;IACf;;;OAGG;;CAEG,CAAA;AAEV;;;GAGG;AACH,KAAK,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAA;AAErE;;GAEG;AACH,KAAK,OAAO,GAAG;IACX;;OAEG;IACH,IAAI,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;GAEG;AACH,KAAK,QAAQ,GAAG,OAAO,EAAE,CAAA;AA4CzB;;;GAGG;AACH,iBAAS,qBAAqB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAsB3C;AAED;;;GAGG;AACH,iBAAS,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQjD;AAMD;;;;;;;GAOG;AACH,iBAAS,aAAa,CAAC,EACnB,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAa,GAChB,EAAE;IACC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAA;IAChC,MAAM,EAAE,SAAS,CAAA;IACjB,MAAM,EAAE,UAAU,CAAA;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACtB,QA8BA;AAED,OAAO,EACH,aAAa,EACb,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,aAAa,EACb,qBAAqB,EACrB,mBAAmB,GACtB,CAAA"}
|