import { FEATURE_NAMES, Feature, FeatureName, Features } from './mcp-helpers.js'; import { getMcpServer } from './mcp-server.js'; import { requireValidTodoistToken, RequireValidTodoistTokenOptions } from './middleware/require-valid-todoist-token.js'; import { registeredTools } from './tool-registry.js'; import { addComments } from './tools/add-comments.js'; import { addFilters } from './tools/add-filters.js'; import { addLabels } from './tools/add-labels.js'; import { addProjects } from './tools/add-projects.js'; import { addReminders } from './tools/add-reminders.js'; import { addSections } from './tools/add-sections.js'; import { addTasks } from './tools/add-tasks.js'; import { analyzeProjectHealth } from './tools/analyze-project-health.js'; import { completeTasks } from './tools/complete-tasks.js'; import { deleteObject } from './tools/delete-object.js'; import { exportProjectTemplate } from './tools/export-project-template.js'; import { fetchObject } from './tools/fetch-object.js'; import { fetch } from './tools/fetch.js'; import { findActivity } from './tools/find-activity.js'; import { findComments } from './tools/find-comments.js'; import { findCompletedTasks } from './tools/find-completed-tasks.js'; import { findFilters } from './tools/find-filters.js'; import { findLabels } from './tools/find-labels.js'; import { findProjectCollaborators } from './tools/find-project-collaborators.js'; import { findProjects } from './tools/find-projects.js'; import { findReminders } from './tools/find-reminders.js'; import { findSections } from './tools/find-sections.js'; import { findTasksByDate } from './tools/find-tasks-by-date.js'; import { findTasks } from './tools/find-tasks.js'; import { getOverview } from './tools/get-overview.js'; import { getProductivityStats } from './tools/get-productivity-stats.js'; import { getProjectActivityStats } from './tools/get-project-activity-stats.js'; import { getProjectHealth } from './tools/get-project-health.js'; import { getWorkspaceInsights } from './tools/get-workspace-insights.js'; import { importProjectTemplate } from './tools/import-project-template.js'; import { listWorkspaces } from './tools/list-workspaces.js'; import { manageAssignments } from './tools/manage-assignments.js'; import { projectManagement } from './tools/project-management.js'; import { projectMove } from './tools/project-move.js'; import { reorderObjects } from './tools/reorder-objects.js'; import { rescheduleTasks } from './tools/reschedule-tasks.js'; import { search } from './tools/search.js'; import { uncompleteTasks } from './tools/uncomplete-tasks.js'; import { updateComments } from './tools/update-comments.js'; import { updateFilters } from './tools/update-filters.js'; import { updateLabels } from './tools/update-labels.js'; import { updateProjects } from './tools/update-projects.js'; import { updateReminders } from './tools/update-reminders.js'; import { updateSections } from './tools/update-sections.js'; import { updateTasks } from './tools/update-tasks.js'; import { userInfo } from './tools/user-info.js'; import { viewAttachment } from './tools/view-attachment.js'; import { validateTodoistToken } from './utils/validate-todoist-token.js'; /** * Every tool, keyed by its export name. * * Derived from the registry so it cannot drift from what the server registers. */ declare const tools: { addTasks: { name: "add-tasks"; description: string; parameters: { tasks: import('zod').ZodArray>>; priority: import('zod').ZodOptional>; dueString: import('zod').ZodOptional>>; deadlineDate: import('zod').ZodOptional>>; duration: import('zod').ZodOptional>>; labels: import('zod').ZodOptional>; projectId: import('zod').ZodOptional>>; sectionId: import('zod').ZodOptional>>; parentId: import('zod').ZodOptional>>; order: import('zod').ZodOptional; responsibleUser: import('zod').ZodOptional>>; isUncompletable: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalRequested: import('zod').ZodNumber; successCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute(args: { tasks: { content: string; description?: string | undefined; priority?: "p1" | "p2" | "p3" | "p4" | undefined; dueString?: string | undefined; deadlineDate?: string | undefined; duration?: string | undefined; labels?: string[] | undefined; projectId?: string | undefined; sectionId?: string | undefined; parentId?: string | undefined; order?: number | undefined; responsibleUser?: string | undefined; isUncompletable?: boolean | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; totalCount: number; failures: { item: string; error: string; }[]; totalRequested: number; successCount: number; failureCount: number; }; }>; }; completeTasks: { name: "complete-tasks"; description: string; parameters: { ids: import('zod').ZodArray; }; outputSchema: { completed: import('zod').ZodArray; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalRequested: import('zod').ZodNumber; successCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { ids: string[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { completed: string[]; failures: { item: string; error: string; code?: string; }[]; totalRequested: number; successCount: number; failureCount: number; }; }>; }; uncompleteTasks: { name: "uncomplete-tasks"; description: string; parameters: { ids: import('zod').ZodArray; }; outputSchema: { uncompleted: import('zod').ZodArray; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalRequested: import('zod').ZodNumber; successCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute(args: { ids: string[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { uncompleted: string[]; failures: { item: string; error: string; code?: string; }[]; totalRequested: number; successCount: number; failureCount: number; }; }>; }; updateTasks: { name: "update-tasks"; description: string; parameters: { tasks: import('zod').ZodArray; description: import('zod').ZodOptional; projectId: import('zod').ZodOptional; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; order: import('zod').ZodOptional; priority: import('zod').ZodOptional>; dueString: import('zod').ZodOptional, import('zod').ZodString>>; deadlineDate: import('zod').ZodOptional, import('zod').ZodString>>; duration: import('zod').ZodOptional; responsibleUser: import('zod').ZodOptional, import('zod').ZodString>>; labels: import('zod').ZodOptional>; isUncompletable: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; updatedTaskIds: import('zod').ZodArray; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; appliedOperations: import('zod').ZodObject<{ updateCount: import('zod').ZodNumber; skippedCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; redundantMovesSkipped: import('zod').ZodNumber; }, import('zod/v4/core').$strip>; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { tasks: { id: string; content?: string | undefined; description?: string | undefined; projectId?: string | undefined; sectionId?: string | undefined; parentId?: string | undefined; order?: number | undefined; priority?: "p1" | "p2" | "p3" | "p4" | undefined; dueString?: string | undefined; deadlineDate?: string | undefined; duration?: string | undefined; responsibleUser?: string | undefined; labels?: string[] | undefined; isUncompletable?: boolean | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; totalCount: number; updatedTaskIds: string[]; failures: { item: string; error: string; code?: string; }[]; appliedOperations: { updateCount: number; skippedCount: number; failureCount: number; redundantMovesSkipped: number; }; }; }>; }; rescheduleTasks: { name: "reschedule-tasks"; description: string; parameters: { tasks: import('zod').ZodArray>; }; outputSchema: { tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; rescheduledTaskIds: import('zod').ZodArray; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { tasks: { id: string; date: string; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; totalCount: number; rescheduledTaskIds: string[]; }; }>; }; findTasks: { name: "find-tasks"; description: string; parameters: { labels: import('zod').ZodOptional>; labelsOperator: import('zod').ZodOptional>; searchText: import('zod').ZodOptional; projectId: import('zod').ZodOptional; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; responsibleUser: import('zod').ZodOptional; responsibleUserFiltering: import('zod').ZodOptional>; limit: import('zod').ZodDefault; cursor: import('zod').ZodOptional; filter: import('zod').ZodOptional; filterIdOrName: import('zod').ZodOptional; }; outputSchema: { tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; hasMore: import('zod').ZodBoolean; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { limit: number; labels?: string[] | undefined; labelsOperator?: "and" | "or" | undefined; searchText?: string | undefined; projectId?: string | undefined; sectionId?: string | undefined; parentId?: string | undefined; responsibleUser?: string | undefined; responsibleUserFiltering?: "assigned" | "unassignedOrMe" | "all" | undefined; cursor?: string | undefined; filter?: string | undefined; filterIdOrName?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; nextCursor: string | undefined; totalCount: number; hasMore: boolean; appliedFilters: { limit: number; labels?: string[] | undefined; labelsOperator?: "and" | "or" | undefined; searchText?: string | undefined; projectId?: string | undefined; sectionId?: string | undefined; parentId?: string | undefined; responsibleUser?: string | undefined; responsibleUserFiltering?: "assigned" | "unassignedOrMe" | "all" | undefined; cursor?: string | undefined; filter?: string | undefined; filterIdOrName?: string | undefined; }; }; }>; }; findTasksByDate: { _meta: { ui: { resourceUri: string; }; }; name: "find-tasks-by-date"; description: string; parameters: { labels: import('zod').ZodOptional>; labelsOperator: import('zod').ZodOptional>; startDate: import('zod').ZodOptional; overdueOption: import('zod').ZodOptional>; daysCount: import('zod').ZodDefault; limit: import('zod').ZodDefault; cursor: import('zod').ZodOptional; responsibleUser: import('zod').ZodOptional; responsibleUserFiltering: import('zod').ZodOptional>; }; outputSchema: { tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; hasMore: import('zod').ZodBoolean; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { daysCount: number; limit: number; labels?: string[] | undefined; labelsOperator?: "and" | "or" | undefined; startDate?: string | undefined; overdueOption?: "overdue-only" | "include-overdue" | "exclude-overdue" | undefined; cursor?: string | undefined; responsibleUser?: string | undefined; responsibleUserFiltering?: "assigned" | "unassignedOrMe" | "all" | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; nextCursor: string | undefined; totalCount: number; hasMore: boolean; appliedFilters: { daysCount: number; limit: number; labels?: string[] | undefined; labelsOperator?: "and" | "or" | undefined; startDate?: string | undefined; overdueOption?: "overdue-only" | "include-overdue" | "exclude-overdue" | undefined; cursor?: string | undefined; responsibleUser?: string | undefined; responsibleUserFiltering?: "assigned" | "unassignedOrMe" | "all" | undefined; }; }; }>; }; findCompletedTasks: { name: "find-completed-tasks"; description: string; parameters: { labels: import('zod').ZodOptional>; labelsOperator: import('zod').ZodOptional>; getBy: import('zod').ZodDefault>; since: import('zod').ZodOptional; until: import('zod').ZodOptional; workspaceId: import('zod').ZodOptional; projectId: import('zod').ZodOptional; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; responsibleUser: import('zod').ZodOptional; limit: import('zod').ZodDefault; cursor: import('zod').ZodOptional; }; outputSchema: { tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; hasMore: import('zod').ZodBoolean; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { getBy: "due" | "completion"; limit: number; labels?: string[] | undefined; labelsOperator?: "and" | "or" | undefined; since?: string | undefined; until?: string | undefined; workspaceId?: string | undefined; projectId?: string | undefined; sectionId?: string | undefined; parentId?: string | undefined; responsibleUser?: string | undefined; cursor?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; nextCursor: string | undefined; totalCount: number; hasMore: boolean; appliedFilters: { since: string; until: string; getBy: "due" | "completion"; limit: number; labels?: string[] | undefined; labelsOperator?: "and" | "or" | undefined; workspaceId?: string | undefined; projectId?: string | undefined; sectionId?: string | undefined; parentId?: string | undefined; responsibleUser?: string | undefined; cursor?: string | undefined; }; }; }>; }; addProjects: { name: "add-projects"; description: string; parameters: { projects: import('zod').ZodArray; isFavorite: import('zod').ZodOptional; viewStyle: import('zod').ZodOptional>; description: import('zod').ZodOptional; color: import('zod').ZodPipe, import('zod').ZodOptional>>; workspace: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { projects: import('zod').ZodArray>>; isFavorite: import('zod').ZodBoolean; isShared: import('zod').ZodBoolean; parentId: import('zod').ZodOptional; inboxProject: import('zod').ZodBoolean; viewStyle: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; childOrder: import('zod').ZodNumber; isArchived: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalRequested: import('zod').ZodNumber; successCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute({ projects }: { projects: { name: string; parentId?: string | undefined; isFavorite?: boolean | undefined; viewStyle?: "list" | "board" | "calendar" | undefined; description?: string | undefined; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; workspace?: string | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { projects: { id: string; name: string; description: string; color: import('@doist/todoist-sdk').ColorKey; isFavorite: boolean; isShared: boolean; parentId: string | undefined; inboxProject: boolean; viewStyle: string; workspaceId: string | undefined; folderId: string | undefined; childOrder: number; isArchived: boolean; }[]; totalCount: number; failures: { item: string; error: string; }[]; totalRequested: number; successCount: number; failureCount: number; }; }>; }; updateProjects: { name: "update-projects"; description: string; parameters: { projects: import('zod').ZodArray; isFavorite: import('zod').ZodOptional; viewStyle: import('zod').ZodOptional>; description: import('zod').ZodOptional, import('zod').ZodString>>; color: import('zod').ZodPipe, import('zod').ZodOptional>>; }, import('zod/v4/core').$strip>>; }; outputSchema: { projects: import('zod').ZodArray>>; isFavorite: import('zod').ZodBoolean; isShared: import('zod').ZodBoolean; parentId: import('zod').ZodOptional; inboxProject: import('zod').ZodBoolean; viewStyle: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; childOrder: import('zod').ZodNumber; isArchived: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; updatedProjectIds: import('zod').ZodArray; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; appliedOperations: import('zod').ZodObject<{ updateCount: import('zod').ZodNumber; skippedCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; }, import('zod/v4/core').$strip>; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { projects: { id: string; name?: string | undefined; isFavorite?: boolean | undefined; viewStyle?: "list" | "board" | "calendar" | undefined; description?: string | undefined; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { projects: { id: string; name: string; description: string; color: import('@doist/todoist-sdk').ColorKey; isFavorite: boolean; isShared: boolean; parentId: string | undefined; inboxProject: boolean; viewStyle: string; workspaceId: string | undefined; folderId: string | undefined; childOrder: number; isArchived: boolean; }[]; totalCount: number; updatedProjectIds: string[]; failures: { item: string; error: string; }[]; appliedOperations: { updateCount: number; skippedCount: number; failureCount: number; }; }; }>; }; findProjects: { name: "find-projects"; description: string; parameters: { searchText: import('zod').ZodOptional; limit: import('zod').ZodDefault; cursor: import('zod').ZodOptional; archivedStatus: import('zod').ZodOptional>; }; outputSchema: { projects: import('zod').ZodArray>>; isFavorite: import('zod').ZodBoolean; isShared: import('zod').ZodBoolean; parentId: import('zod').ZodOptional; inboxProject: import('zod').ZodBoolean; viewStyle: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; childOrder: import('zod').ZodNumber; isArchived: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; hasMore: import('zod').ZodBoolean; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { limit: number; searchText?: string | undefined; cursor?: string | undefined; archivedStatus?: "all" | "active" | "archived" | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { projects: { id: string; name: string; description: string; color: import('@doist/todoist-sdk').ColorKey; isFavorite: boolean; isShared: boolean; parentId: string | undefined; inboxProject: boolean; viewStyle: string; workspaceId: string | undefined; folderId: string | undefined; childOrder: number; isArchived: boolean; }[]; nextCursor: string | undefined; totalCount: number; hasMore: boolean; appliedFilters: { limit: number; searchText?: string | undefined; cursor?: string | undefined; archivedStatus?: "all" | "active" | "archived" | undefined; }; }; }>; }; projectManagement: { name: "project-management"; description: string; parameters: { action: import('zod').ZodEnum<{ archive: "archive"; unarchive: "unarchive"; }>; projectId: import('zod').ZodString; }; outputSchema: { project: import('zod').ZodObject<{ id: import('zod').ZodString; name: import('zod').ZodString; description: import('zod').ZodString; color: import('zod').ZodCatch>>; isFavorite: import('zod').ZodBoolean; isShared: import('zod').ZodBoolean; parentId: import('zod').ZodOptional; inboxProject: import('zod').ZodBoolean; viewStyle: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; childOrder: import('zod').ZodNumber; isArchived: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>; success: import('zod').ZodBoolean; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: true; }; execute(args: { action: "archive" | "unarchive"; projectId: string; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { project: { id: string; name: string; description: string; color: import('@doist/todoist-sdk').ColorKey; isFavorite: boolean; isShared: boolean; parentId: string | undefined; inboxProject: boolean; viewStyle: string; workspaceId: string | undefined; folderId: string | undefined; childOrder: number; isArchived: boolean; }; success: true; }; }>; }; projectMove: { name: "project-move"; description: string; parameters: { action: import('zod').ZodEnum<{ "move-to-workspace": "move-to-workspace"; "move-to-personal": "move-to-personal"; }>; projectId: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; visibility: import('zod').ZodOptional>; }; outputSchema: { project: import('zod').ZodObject<{ id: import('zod').ZodString; name: import('zod').ZodString; description: import('zod').ZodString; color: import('zod').ZodCatch>>; isFavorite: import('zod').ZodBoolean; isShared: import('zod').ZodBoolean; parentId: import('zod').ZodOptional; inboxProject: import('zod').ZodBoolean; viewStyle: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; childOrder: import('zod').ZodNumber; isArchived: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>; success: import('zod').ZodBoolean; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: true; }; execute(args: { action: "move-to-workspace" | "move-to-personal"; projectId: string; workspaceId?: string | undefined; folderId?: string | undefined; visibility?: "public" | "restricted" | "team" | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { project: { id: string; name: string; description: string; color: import('@doist/todoist-sdk').ColorKey; isFavorite: boolean; isShared: boolean; parentId: string | undefined; inboxProject: boolean; viewStyle: string; workspaceId: string | undefined; folderId: string | undefined; childOrder: number; isArchived: boolean; }; success: true; }; }>; }; addSections: { name: "add-sections"; description: string; parameters: { sections: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; }; outputSchema: { sections: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; failures: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalRequested: import('zod').ZodNumber; successCount: import('zod').ZodNumber; failureCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute({ sections }: { sections: { name: string; projectId: string; description?: string | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { sections: { id: string; name: string; sectionOrder: number; description?: string | undefined; }[]; totalCount: number; failures: { item: string; error: string; }[]; totalRequested: number; successCount: number; failureCount: number; }; }>; }; updateSections: { name: "update-sections"; description: string; parameters: { sections: import('zod').ZodArray; description: import('zod').ZodOptional, import('zod').ZodString>>; }, import('zod/v4/core').$strip>>; }; outputSchema: { sections: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; updatedSectionIds: import('zod').ZodArray; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute({ sections }: { sections: { id: string; name?: string | undefined; description?: string | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { sections: { id: string; name: string; sectionOrder: number; description?: string | undefined; }[]; totalCount: number; updatedSectionIds: string[]; }; }>; }; findSections: { name: "find-sections"; description: string; parameters: { projectId: import('zod').ZodString; searchText: import('zod').ZodOptional; }; outputSchema: { sections: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { projectId: string; searchText?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { sections: { id: string; name: string; sectionOrder: number; description?: string | undefined; }[]; totalCount: number; appliedFilters: { projectId: string; searchText?: string | undefined; }; }; }>; }; addComments: { name: "add-comments"; description: string; parameters: { comments: import('zod').ZodArray; projectId: import('zod').ZodOptional; content: import('zod').ZodString; notifyUsers: import('zod').ZodOptional>; }, import('zod/v4/core').$strip>>; }; outputSchema: { comments: import('zod').ZodArray; projectId: import('zod').ZodOptional; content: import('zod').ZodString; postedAt: import('zod').ZodString; postedUid: import('zod').ZodOptional; notifiedUserIds: import('zod').ZodOptional>; fileAttachment: import('zod').ZodOptional; fileSize: import('zod').ZodOptional; fileType: import('zod').ZodOptional; fileUrl: import('zod').ZodOptional; fileDuration: import('zod').ZodOptional; uploadState: import('zod').ZodOptional>; url: import('zod').ZodOptional; title: import('zod').ZodOptional; image: import('zod').ZodOptional; imageWidth: import('zod').ZodOptional; imageHeight: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; addedCommentIds: import('zod').ZodArray; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute(args: { comments: { content: string; taskId?: string | undefined; projectId?: string | undefined; notifyUsers?: string[] | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { comments: { id: string; taskId: string | undefined; projectId: string | undefined; content: string; postedAt: string; postedUid: string; notifiedUserIds: string[] | undefined; fileAttachment: { resourceType: string; fileName: string | undefined; fileSize: number | undefined; fileType: string | undefined; fileUrl: string | undefined; fileDuration: number | undefined; uploadState: "completed" | "pending" | undefined; url: string | undefined; title: string | undefined; image: string | undefined; imageWidth: number | undefined; imageHeight: number | undefined; } | undefined; }[]; totalCount: number; addedCommentIds: string[]; }; }>; }; findComments: { name: "find-comments"; description: string; parameters: { taskId: import('zod').ZodOptional; projectId: import('zod').ZodOptional; commentId: import('zod').ZodOptional; cursor: import('zod').ZodOptional; limit: import('zod').ZodOptional; }; outputSchema: { comments: import('zod').ZodArray; projectId: import('zod').ZodOptional; content: import('zod').ZodString; postedAt: import('zod').ZodString; postedUid: import('zod').ZodOptional; notifiedUserIds: import('zod').ZodOptional>; fileAttachment: import('zod').ZodOptional; fileSize: import('zod').ZodOptional; fileType: import('zod').ZodOptional; fileUrl: import('zod').ZodOptional; fileDuration: import('zod').ZodOptional; uploadState: import('zod').ZodOptional>; url: import('zod').ZodOptional; title: import('zod').ZodOptional; image: import('zod').ZodOptional; imageWidth: import('zod').ZodOptional; imageHeight: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>>; searchType: import('zod').ZodString; searchId: import('zod').ZodString; hasMore: import('zod').ZodBoolean; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { taskId?: string | undefined; projectId?: string | undefined; commentId?: string | undefined; cursor?: string | undefined; limit?: number | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { comments: { id: string; taskId: string | undefined; projectId: string | undefined; content: string; postedAt: string; postedUid: string; notifiedUserIds: string[] | undefined; fileAttachment: { resourceType: string; fileName: string | undefined; fileSize: number | undefined; fileType: string | undefined; fileUrl: string | undefined; fileDuration: number | undefined; uploadState: "completed" | "pending" | undefined; url: string | undefined; title: string | undefined; image: string | undefined; imageWidth: number | undefined; imageHeight: number | undefined; } | undefined; }[]; searchType: string; searchId: string; hasMore: boolean; nextCursor: string | undefined; totalCount: number; }; }>; }; updateComments: { name: "update-comments"; description: string; parameters: { comments: import('zod').ZodArray>; }; outputSchema: { comments: import('zod').ZodArray; projectId: import('zod').ZodOptional; content: import('zod').ZodString; postedAt: import('zod').ZodString; postedUid: import('zod').ZodOptional; notifiedUserIds: import('zod').ZodOptional>; fileAttachment: import('zod').ZodOptional; fileSize: import('zod').ZodOptional; fileType: import('zod').ZodOptional; fileUrl: import('zod').ZodOptional; fileDuration: import('zod').ZodOptional; uploadState: import('zod').ZodOptional>; url: import('zod').ZodOptional; title: import('zod').ZodOptional; image: import('zod').ZodOptional; imageWidth: import('zod').ZodOptional; imageHeight: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; updatedCommentIds: import('zod').ZodArray; appliedOperations: import('zod').ZodObject<{ updateCount: import('zod').ZodNumber; }, import('zod/v4/core').$strip>; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { comments: { id: string; content: string; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { comments: { id: string; taskId: string | undefined; projectId: string | undefined; content: string; postedAt: string; postedUid: string; notifiedUserIds: string[] | undefined; fileAttachment: { resourceType: string; fileName: string | undefined; fileSize: number | undefined; fileType: string | undefined; fileUrl: string | undefined; fileDuration: number | undefined; uploadState: "completed" | "pending" | undefined; url: string | undefined; title: string | undefined; image: string | undefined; imageWidth: number | undefined; imageHeight: number | undefined; } | undefined; }[]; totalCount: number; updatedCommentIds: string[]; appliedOperations: { updateCount: number; }; }; }>; }; addReminders: { name: "add-reminders"; description: string; parameters: { reminders: import('zod').ZodArray; taskId: import('zod').ZodString; minuteOffset: import('zod').ZodNumber; service: import('zod').ZodOptional>; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ type: import('zod').ZodLiteral<"absolute">; taskId: import('zod').ZodString; due: import('zod').ZodObject<{ date: import('zod').ZodOptional; string: import('zod').ZodOptional; timezone: import('zod').ZodOptional; lang: import('zod').ZodOptional; }, import('zod/v4/core').$strip>; service: import('zod').ZodOptional>; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ type: import('zod').ZodLiteral<"location">; taskId: import('zod').ZodString; name: import('zod').ZodString; locLat: import('zod').ZodString; locLong: import('zod').ZodString; locTrigger: import('zod').ZodEnum<{ on_enter: "on_enter"; on_leave: "on_leave"; }>; radius: import('zod').ZodOptional; }, import('zod/v4/core').$strip>], "type">>; }; outputSchema: { reminders: import('zod').ZodArray; minuteOffset: import('zod').ZodOptional; due: import('zod').ZodOptional; timezone: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; name: import('zod').ZodOptional; locLat: import('zod').ZodOptional; locLong: import('zod').ZodOptional; locTrigger: import('zod').ZodOptional>; radius: import('zod').ZodOptional; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; addedReminderIds: import('zod').ZodArray; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute(args: { reminders: ({ type: "relative"; taskId: string; minuteOffset: number; service?: "push" | "email" | undefined; isUrgent?: boolean | undefined; } | { type: "absolute"; taskId: string; due: { date?: string | undefined; string?: string | undefined; timezone?: string | undefined; lang?: string | undefined; }; service?: "push" | "email" | undefined; isUrgent?: boolean | undefined; } | { type: "location"; taskId: string; name: string; locLat: string; locLong: string; locTrigger: "on_enter" | "on_leave"; radius?: number | undefined; })[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { reminders: ({ minuteOffset: number; due: { isRecurring: boolean; string: string; date: string; datetime: string | undefined; timezone: string | undefined; } | undefined; isUrgent: boolean | undefined; id: string; taskId: string; type: "location" | "absolute" | "relative"; } | { due: { isRecurring: boolean; string: string; date: string; datetime: string | undefined; timezone: string | undefined; }; isUrgent: boolean | undefined; id: string; taskId: string; type: "location" | "absolute" | "relative"; } | { name: string; locLat: string; locLong: string; locTrigger: "on_enter" | "on_leave"; radius: number; id: string; taskId: string; type: "location" | "absolute" | "relative"; })[]; totalCount: number; addedReminderIds: string[]; }; }>; }; findReminders: { name: "find-reminders"; description: string; parameters: { taskId: import('zod').ZodOptional; reminderId: import('zod').ZodOptional; locationReminderId: import('zod').ZodOptional; }; outputSchema: { reminders: import('zod').ZodArray; minuteOffset: import('zod').ZodOptional; due: import('zod').ZodOptional; timezone: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; name: import('zod').ZodOptional; locLat: import('zod').ZodOptional; locLong: import('zod').ZodOptional; locTrigger: import('zod').ZodOptional>; radius: import('zod').ZodOptional; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; searchType: import('zod').ZodString; searchId: import('zod').ZodString; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { taskId?: string | undefined; reminderId?: string | undefined; locationReminderId?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { reminders: ({ minuteOffset: number; due: { isRecurring: boolean; string: string; date: string; datetime: string | undefined; timezone: string | undefined; } | undefined; isUrgent: boolean | undefined; id: string; taskId: string; type: "location" | "absolute" | "relative"; } | { due: { isRecurring: boolean; string: string; date: string; datetime: string | undefined; timezone: string | undefined; }; isUrgent: boolean | undefined; id: string; taskId: string; type: "location" | "absolute" | "relative"; } | { name: string; locLat: string; locLong: string; locTrigger: "on_enter" | "on_leave"; radius: number; id: string; taskId: string; type: "location" | "absolute" | "relative"; })[]; searchType: string; searchId: string; totalCount: number; }; }>; }; updateReminders: { name: "update-reminders"; description: string; parameters: { reminders: import('zod').ZodArray; id: import('zod').ZodString; minuteOffset: import('zod').ZodOptional; service: import('zod').ZodOptional>; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ type: import('zod').ZodLiteral<"absolute">; id: import('zod').ZodString; due: import('zod').ZodOptional; string: import('zod').ZodOptional; timezone: import('zod').ZodOptional; lang: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; service: import('zod').ZodOptional>; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ type: import('zod').ZodLiteral<"location">; id: import('zod').ZodString; name: import('zod').ZodOptional; locLat: import('zod').ZodOptional; locLong: import('zod').ZodOptional; locTrigger: import('zod').ZodOptional>; radius: import('zod').ZodOptional; }, import('zod/v4/core').$strip>], "type">>; }; outputSchema: { reminders: import('zod').ZodArray; minuteOffset: import('zod').ZodOptional; due: import('zod').ZodOptional; timezone: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; name: import('zod').ZodOptional; locLat: import('zod').ZodOptional; locLong: import('zod').ZodOptional; locTrigger: import('zod').ZodOptional>; radius: import('zod').ZodOptional; isUrgent: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; updatedReminderIds: import('zod').ZodArray; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: true; }; execute(args: { reminders: ({ type: "relative"; id: string; minuteOffset?: number | undefined; service?: "push" | "email" | undefined; isUrgent?: boolean | undefined; } | { type: "absolute"; id: string; due?: { date?: string | undefined; string?: string | undefined; timezone?: string | undefined; lang?: string | undefined; } | undefined; service?: "push" | "email" | undefined; isUrgent?: boolean | undefined; } | { type: "location"; id: string; name?: string | undefined; locLat?: string | undefined; locLong?: string | undefined; locTrigger?: "on_enter" | "on_leave" | undefined; radius?: number | undefined; })[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { reminders: ({ minuteOffset: number; due: { isRecurring: boolean; string: string; date: string; datetime: string | undefined; timezone: string | undefined; } | undefined; isUrgent: boolean | undefined; id: string; taskId: string; type: "location" | "absolute" | "relative"; } | { due: { isRecurring: boolean; string: string; date: string; datetime: string | undefined; timezone: string | undefined; }; isUrgent: boolean | undefined; id: string; taskId: string; type: "location" | "absolute" | "relative"; } | { name: string; locLat: string; locLong: string; locTrigger: "on_enter" | "on_leave"; radius: number; id: string; taskId: string; type: "location" | "absolute" | "relative"; })[]; totalCount: number; updatedReminderIds: string[]; }; }>; }; viewAttachment: { name: "view-attachment"; description: string; parameters: { fileUrl: import('zod').ZodURL; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute({ fileUrl }: { fileUrl: string; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; contentItems?: undefined; } | { textContent: string; contentItems: import('@modelcontextprotocol/server').ContentBlock[]; }>; }; addLabels: { name: "add-labels"; description: string; parameters: { labels: import('zod').ZodArray, import('zod').ZodOptional>>; order: import('zod').ZodOptional; isFavorite: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { labels: import('zod').ZodArray>>; order: import('zod').ZodCatch>; isFavorite: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute({ labels }: { labels: { name: string; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; order?: number | undefined; isFavorite?: boolean | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { labels: { id: string; name: string; isFavorite: boolean; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; order?: number | undefined; }[]; totalCount: number; }; }>; }; updateLabels: { name: "update-labels"; description: string; parameters: { labels: import('zod').ZodArray; id: import('zod').ZodString; name: import('zod').ZodOptional; color: import('zod').ZodPipe, import('zod').ZodOptional>>; order: import('zod').ZodOptional; isFavorite: import('zod').ZodOptional; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ labelType: import('zod').ZodLiteral<"shared">; name: import('zod').ZodString; newName: import('zod').ZodString; }, import('zod/v4/core').$strip>], "labelType">>; }; outputSchema: { updatedLabels: import('zod').ZodArray>>; order: import('zod').ZodCatch>; isFavorite: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; renamedSharedLabels: import('zod').ZodArray>; totalCount: import('zod').ZodNumber; appliedOperations: import('zod').ZodObject<{ updateCount: import('zod').ZodNumber; renameCount: import('zod').ZodNumber; skippedCount: import('zod').ZodNumber; }, import('zod/v4/core').$strip>; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { labels: ({ labelType: "personal"; id: string; name?: string | undefined; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; order?: number | undefined; isFavorite?: boolean | undefined; } | { labelType: "shared"; name: string; newName: string; })[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { updatedLabels: { id: string; name: string; isFavorite: boolean; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; order?: number | undefined; }[]; renamedSharedLabels: { name: string; newName: string; }[]; totalCount: number; appliedOperations: { updateCount: number; renameCount: number; skippedCount: number; }; }; }>; }; findLabels: { name: "find-labels"; description: string; parameters: { searchText: import('zod').ZodOptional; limit: import('zod').ZodDefault; cursor: import('zod').ZodOptional; }; outputSchema: { labels: import('zod').ZodArray>>; order: import('zod').ZodCatch>; isFavorite: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; hasMore: import('zod').ZodBoolean; sharedLabels: import('zod').ZodArray; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { limit: number; searchText?: string | undefined; cursor?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { labels: { id: string; name: string; isFavorite: boolean; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; order?: number | undefined; }[]; nextCursor: string | undefined; totalCount: number; hasMore: boolean; sharedLabels: string[]; appliedFilters: { searchText: string; limit?: undefined; cursor?: undefined; } | { limit: number; cursor: string | undefined; searchText?: undefined; }; }; }>; }; findFilters: { name: "find-filters"; description: string; parameters: { search: import('zod').ZodOptional; }; outputSchema: { filters: import('zod').ZodArray; color: import('zod').ZodCatch>>; isFavorite: import('zod').ZodBoolean; itemOrder: import('zod').ZodNumber; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { search?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { filters: { id: string; name: string; query: string; description: string | undefined; color: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; isFavorite: boolean; itemOrder: number; }[]; totalCount: number; }; }>; }; addFilters: { name: "add-filters"; description: string; parameters: { filters: import('zod').ZodArray>>; color: import('zod').ZodPipe, import('zod').ZodOptional>>; isFavorite: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { filters: import('zod').ZodArray; color: import('zod').ZodCatch>>; isFavorite: import('zod').ZodBoolean; itemOrder: import('zod').ZodNumber; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute({ filters }: { filters: { name: string; query: string; description?: string | undefined; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; isFavorite?: boolean | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { filters: { color: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; isFavorite: boolean; itemOrder: number; description?: string | undefined; id: string; name: string; query: string; }[]; totalCount: number; }; }>; }; updateFilters: { name: "update-filters"; description: string; parameters: { filters: import('zod').ZodArray; query: import('zod').ZodOptional; description: import('zod').ZodOptional, import('zod').ZodString>>; color: import('zod').ZodPipe, import('zod').ZodOptional>>; isFavorite: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { filters: import('zod').ZodArray; color: import('zod').ZodCatch>>; isFavorite: import('zod').ZodBoolean; itemOrder: import('zod').ZodNumber; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; updatedFilterIds: import('zod').ZodArray; appliedOperations: import('zod').ZodObject<{ updateCount: import('zod').ZodNumber; skippedCount: import('zod').ZodNumber; }, import('zod/v4/core').$strip>; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { filters: { id: string; name?: string | undefined; query?: string | undefined; description?: string | undefined; color?: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; isFavorite?: boolean | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { filters: { id: string; name: string; query: string; description: string | undefined; color: "berry_red" | "red" | "orange" | "yellow" | "olive_green" | "lime_green" | "green" | "mint_green" | "teal" | "sky_blue" | "light_blue" | "blue" | "grape" | "violet" | "lavender" | "magenta" | "salmon" | "charcoal" | "grey" | "taupe" | undefined; isFavorite: boolean; itemOrder: number; }[]; totalCount: number; updatedFilterIds: string[]; appliedOperations: { updateCount: number; skippedCount: number; }; }; }>; }; findActivity: { name: "find-activity"; description: string; parameters: { objectType: import('zod').ZodOptional>; objectId: import('zod').ZodOptional; eventType: import('zod').ZodOptional>; projectId: import('zod').ZodOptional; taskId: import('zod').ZodOptional; initiatorId: import('zod').ZodOptional; dateFrom: import('zod').ZodPipe>>, import('zod').ZodOptional>>; dateTo: import('zod').ZodPipe>>, import('zod').ZodOptional>>; limit: import('zod').ZodDefault; cursor: import('zod').ZodOptional; }; outputSchema: { events: import('zod').ZodArray; objectType: import('zod').ZodString; objectId: import('zod').ZodString; eventType: import('zod').ZodString; eventDate: import('zod').ZodString; parentProjectId: import('zod').ZodOptional; parentItemId: import('zod').ZodOptional; initiatorId: import('zod').ZodOptional; extraData: import('zod').ZodOptional>; }, import('zod/v4/core').$strip>>; nextCursor: import('zod').ZodOptional; totalCount: import('zod').ZodNumber; hasMore: import('zod').ZodBoolean; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { limit: number; objectType?: "comment" | "task" | "project" | undefined; objectId?: string | undefined; eventType?: "completed" | "added" | "updated" | "deleted" | "uncompleted" | "archived" | "unarchived" | "shared" | "left" | undefined; projectId?: string | undefined; taskId?: string | undefined; initiatorId?: string | undefined; dateFrom?: string | undefined; dateTo?: string | undefined; cursor?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { events: { id: string | undefined; objectType: string; objectId: string; eventType: string; eventDate: string; parentProjectId: string | undefined; parentItemId: string | undefined; initiatorId: string | undefined; extraData: Record | undefined; }[]; nextCursor: string | undefined; totalCount: number; hasMore: boolean; appliedFilters: { limit: number; objectType?: "comment" | "task" | "project" | undefined; objectId?: string | undefined; eventType?: "completed" | "added" | "updated" | "deleted" | "uncompleted" | "archived" | "unarchived" | "shared" | "left" | undefined; projectId?: string | undefined; taskId?: string | undefined; initiatorId?: string | undefined; dateFrom?: string | undefined; dateTo?: string | undefined; cursor?: string | undefined; }; }; }>; }; getProductivityStats: { name: "get-productivity-stats"; description: string; parameters: {}; outputSchema: { completedCount: import('zod').ZodNumber; daysItems: import('zod').ZodArray>; }, import('zod/v4/core').$strip>>; weekItems: import('zod').ZodArray>; }, import('zod/v4/core').$strip>>; goals: import('zod').ZodObject<{ dailyGoal: import('zod').ZodNumber; weeklyGoal: import('zod').ZodNumber; currentDailyStreak: import('zod').ZodObject<{ count: import('zod').ZodNumber; start: import('zod').ZodString; end: import('zod').ZodString; }, import('zod/v4/core').$strip>; currentWeeklyStreak: import('zod').ZodObject<{ count: import('zod').ZodNumber; start: import('zod').ZodString; end: import('zod').ZodString; }, import('zod/v4/core').$strip>; lastDailyStreak: import('zod').ZodObject<{ count: import('zod').ZodNumber; start: import('zod').ZodString; end: import('zod').ZodString; }, import('zod/v4/core').$strip>; lastWeeklyStreak: import('zod').ZodObject<{ count: import('zod').ZodNumber; start: import('zod').ZodString; end: import('zod').ZodString; }, import('zod/v4/core').$strip>; maxDailyStreak: import('zod').ZodObject<{ count: import('zod').ZodNumber; start: import('zod').ZodString; end: import('zod').ZodString; }, import('zod/v4/core').$strip>; maxWeeklyStreak: import('zod').ZodObject<{ count: import('zod').ZodNumber; start: import('zod').ZodString; end: import('zod').ZodString; }, import('zod/v4/core').$strip>; vacationMode: import('zod').ZodBoolean; karmaDisabled: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>; karma: import('zod').ZodNumber; karmaTrend: import('zod').ZodString; karmaLastUpdate: import('zod').ZodNumber; karmaGraphData: import('zod').ZodArray>; karmaUpdateReasons: import('zod').ZodArray; negativeKarmaReasons: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; projectColors: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(_args: Record, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { completedCount: number; daysItems: { items: { id: string; completed: number; }[]; totalCompleted: number; date: string; }[]; weekItems: { items: { id: string; completed: number; }[]; totalCompleted: number; from: string; to: string; }[]; goals: { dailyGoal: number; weeklyGoal: number; currentDailyStreak: { count: number; start: string; end: string; }; currentWeeklyStreak: { count: number; start: string; end: string; }; lastDailyStreak: { count: number; start: string; end: string; }; lastWeeklyStreak: { count: number; start: string; end: string; }; maxDailyStreak: { count: number; start: string; end: string; }; maxWeeklyStreak: { count: number; start: string; end: string; }; vacationMode: boolean; karmaDisabled: boolean; }; karma: number; karmaTrend: string; karmaLastUpdate: number; karmaGraphData: { date: string; karmaAvg: number; }[]; karmaUpdateReasons: { time: string; newKarma: number; positiveKarma: number; negativeKarma: number; positiveKarmaReasons: any[]; negativeKarmaReasons: any[]; }[]; projectColors: Record; }; }>; }; getProjectHealth: { name: "get-project-health"; description: string; parameters: { projectId: import('zod').ZodString; includeContext: import('zod').ZodDefault; }; outputSchema: { projectId: import('zod').ZodString; projectName: import('zod').ZodString; progress: import('zod').ZodObject<{ completedCount: import('zod').ZodNumber; activeCount: import('zod').ZodNumber; progressPercent: import('zod').ZodNumber; }, import('zod/v4/core').$strip>; health: import('zod').ZodObject<{ status: import('zod').ZodEnum<{ UNKNOWN: "UNKNOWN"; ON_TRACK: "ON_TRACK"; AT_RISK: "AT_RISK"; CRITICAL: "CRITICAL"; EXCELLENT: "EXCELLENT"; ERROR: "ERROR"; }>; description: import('zod').ZodOptional; descriptionSummary: import('zod').ZodOptional; isStale: import('zod').ZodBoolean; updateInProgress: import('zod').ZodBoolean; updatedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>; context: import('zod').ZodOptional; projectMetrics: import('zod').ZodObject<{ totalTasks: import('zod').ZodNumber; completedTasks: import('zod').ZodNumber; overdueTasks: import('zod').ZodNumber; tasksCreatedThisWeek: import('zod').ZodNumber; tasksCompletedThisWeek: import('zod').ZodNumber; averageCompletionTime: import('zod').ZodOptional; }, import('zod/v4/core').$strip>; tasks: import('zod').ZodArray; deadline: import('zod').ZodOptional; isCompleted: import('zod').ZodBoolean; labels: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { projectId: string; includeContext: boolean; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { projectId: string; projectName: string; progress: { completedCount: number; activeCount: number; progressPercent: number; }; health: { status: "UNKNOWN" | "ON_TRACK" | "AT_RISK" | "CRITICAL" | "EXCELLENT" | "ERROR"; description: string | undefined; descriptionSummary: string | undefined; isStale: boolean; updateInProgress: boolean; updatedAt: string | undefined; }; context: { projectDescription: string | undefined; projectMetrics: { averageCompletionTime: number | undefined; totalTasks: number; completedTasks: number; overdueTasks: number; tasksCreatedThisWeek: number; tasksCompletedThisWeek: number; }; tasks: { id: string; content: string; priority: string; due: string | undefined; deadline: string | undefined; isCompleted: boolean; labels: string[]; }[]; } | undefined; }; }>; }; getProjectActivityStats: { name: "get-project-activity-stats"; description: string; parameters: { projectId: import('zod').ZodString; weeks: import('zod').ZodOptional; includeWeeklyCounts: import('zod').ZodOptional; }; outputSchema: { projectId: import('zod').ZodString; dayItems: import('zod').ZodArray>; weekItems: import('zod').ZodOptional>>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { projectId: string; weeks?: number | undefined; includeWeeklyCounts?: boolean | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { projectId: string; dayItems: { date: string; totalCount: number; }[]; weekItems: { fromDate: string; toDate: string; totalCount: number; }[] | undefined; }; }>; }; analyzeProjectHealth: { name: "analyze-project-health"; description: string; parameters: { projectId: import('zod').ZodString; }; outputSchema: { projectId: import('zod').ZodString; health: import('zod').ZodObject<{ status: import('zod').ZodEnum<{ UNKNOWN: "UNKNOWN"; ON_TRACK: "ON_TRACK"; AT_RISK: "AT_RISK"; CRITICAL: "CRITICAL"; EXCELLENT: "EXCELLENT"; ERROR: "ERROR"; }>; isStale: import('zod').ZodBoolean; updateInProgress: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>; message: import('zod').ZodString; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: true; }; execute(args: { projectId: string; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { projectId: string; health: { status: "UNKNOWN" | "ON_TRACK" | "AT_RISK" | "CRITICAL" | "EXCELLENT" | "ERROR"; isStale: boolean; updateInProgress: boolean; }; message: string; }; }>; }; getWorkspaceInsights: { name: "get-workspace-insights"; description: string; parameters: { workspaceIdOrName: import('zod').ZodString; projectIds: import('zod').ZodOptional>; }; outputSchema: { workspaceId: import('zod').ZodString; workspaceName: import('zod').ZodString; projectInsights: import('zod').ZodArray; isStale: import('zod').ZodBoolean; updateInProgress: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>>; progress: import('zod').ZodOptional>; }, import('zod/v4/core').$strip>>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { workspaceIdOrName: string; projectIds?: string[] | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { workspaceId: string; workspaceName: string; projectInsights: { projectId: string; health: { status: "UNKNOWN" | "ON_TRACK" | "AT_RISK" | "CRITICAL" | "EXCELLENT" | "ERROR"; isStale: boolean; updateInProgress: boolean; } | undefined; progress: { completedCount: number; activeCount: number; progressPercent: number; } | undefined; }[]; }; }>; }; getOverview: { name: "get-overview"; description: string; parameters: { projectId: import('zod').ZodOptional; }; outputSchema: { type: import('zod').ZodEnum<{ account_overview: "account_overview"; project_overview: "project_overview"; }>; totalProjects: import('zod').ZodOptional; totalTasks: import('zod').ZodOptional; totalSections: import('zod').ZodOptional; tasksWithoutSection: import('zod').ZodOptional; projectInfo: import('zod').ZodOptional>; hasNestedProjects: import('zod').ZodOptional; inbox: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>>; projects: import('zod').ZodOptional>>>>; project: import('zod').ZodOptional>; sections: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>>; tasks: import('zod').ZodOptional>; stats: import('zod').ZodOptional>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { projectId?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: import('./tools/get-overview.js').AccountOverviewStructured | import('./tools/get-overview.js').ProjectOverviewStructured; }>; }; deleteObject: { name: "delete-object"; description: string; parameters: { type: import('zod').ZodEnum<{ filter: "filter"; label: "label"; comment: "comment"; task: "task"; reminder: "reminder"; project: "project"; section: "section"; location_reminder: "location_reminder"; }>; id: import('zod').ZodString; }; outputSchema: { deletedEntity: import('zod').ZodObject<{ type: import('zod').ZodEnum<{ filter: "filter"; label: "label"; comment: "comment"; task: "task"; reminder: "reminder"; project: "project"; section: "section"; location_reminder: "location_reminder"; }>; id: import('zod').ZodString; }, import('zod/v4/core').$strip>; success: import('zod').ZodBoolean; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: true; }; execute(args: { type: "filter" | "label" | "comment" | "task" | "reminder" | "project" | "section" | "location_reminder"; id: string; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { deletedEntity: { type: "filter" | "label" | "comment" | "task" | "reminder" | "project" | "section" | "location_reminder"; id: string; }; success: true; }; }>; }; fetchObject: { name: "fetch-object"; description: string; parameters: { type: import('zod').ZodEnum<{ comment: "comment"; task: "task"; project: "project"; section: "section"; }>; id: import('zod').ZodString; includeChildren: import('zod').ZodOptional; }; outputSchema: { childCount: import('zod').ZodOptional; children: import('zod').ZodOptional; hasChildren: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ name: import('zod').ZodString; id: import('zod').ZodString; hasChildren: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>]>>>; hasMoreChildren: import('zod').ZodOptional; childrenError: import('zod').ZodOptional; type: import('zod').ZodEnum<{ comment: "comment"; task: "task"; project: "project"; section: "section"; }>; id: import('zod').ZodString; object: import('zod').ZodUnion; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ id: import('zod').ZodString; name: import('zod').ZodString; description: import('zod').ZodString; color: import('zod').ZodCatch>>; isFavorite: import('zod').ZodBoolean; isShared: import('zod').ZodBoolean; parentId: import('zod').ZodOptional; inboxProject: import('zod').ZodBoolean; viewStyle: import('zod').ZodString; workspaceId: import('zod').ZodOptional; folderId: import('zod').ZodOptional; childOrder: import('zod').ZodNumber; isArchived: import('zod').ZodBoolean; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ id: import('zod').ZodString; taskId: import('zod').ZodOptional; projectId: import('zod').ZodOptional; content: import('zod').ZodString; postedAt: import('zod').ZodString; postedUid: import('zod').ZodOptional; notifiedUserIds: import('zod').ZodOptional>; fileAttachment: import('zod').ZodOptional; fileSize: import('zod').ZodOptional; fileType: import('zod').ZodOptional; fileUrl: import('zod').ZodOptional; fileDuration: import('zod').ZodOptional; uploadState: import('zod').ZodOptional>; url: import('zod').ZodOptional; title: import('zod').ZodOptional; image: import('zod').ZodOptional; imageWidth: import('zod').ZodOptional; imageHeight: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>, import('zod').ZodObject<{ id: import('zod').ZodString; name: import('zod').ZodString; sectionOrder: import('zod').ZodNumber; description: import('zod').ZodOptional; }, import('zod/v4/core').$strip>]>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { type: "comment" | "task" | "project" | "section"; id: string; includeChildren?: boolean | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { type: "task"; id: string; object: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }; }; } | { textContent: string; structuredContent: { childCount?: number; children?: ({ content: string; id: string; checked: boolean; hasChildren: boolean; dueDate?: string | undefined; } | { name: string; id: string; hasChildren: boolean; })[]; hasMoreChildren?: boolean; childrenError?: string; type: "project"; id: string; object: { id: string; name: string; description: string; color: import('@doist/todoist-sdk').ColorKey; isFavorite: boolean; isShared: boolean; parentId: string | undefined; inboxProject: boolean; viewStyle: string; workspaceId: string | undefined; folderId: string | undefined; childOrder: number; isArchived: boolean; }; }; } | { textContent: string; structuredContent: { type: "comment"; id: string; object: { id: string; taskId: string | undefined; projectId: string | undefined; content: string; postedAt: string; postedUid: string; notifiedUserIds: string[] | undefined; fileAttachment: { resourceType: string; fileName: string | undefined; fileSize: number | undefined; fileType: string | undefined; fileUrl: string | undefined; fileDuration: number | undefined; uploadState: "completed" | "pending" | undefined; url: string | undefined; title: string | undefined; image: string | undefined; imageWidth: number | undefined; imageHeight: number | undefined; } | undefined; }; }; } | { textContent: string; structuredContent: { type: "section"; id: string; object: { id: string; name: string; sectionOrder: number; description?: string | undefined; }; }; }>; }; reorderObjects: { name: "reorder-objects"; description: string; parameters: { type: import('zod').ZodEnum<{ project: "project"; section: "section"; }>; items: import('zod').ZodArray; parentId: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }; outputSchema: { type: import('zod').ZodEnum<{ project: "project"; section: "section"; }>; movedCount: import('zod').ZodNumber; reorderedCount: import('zod').ZodNumber; affectedIds: import('zod').ZodArray; success: import('zod').ZodBoolean; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: true; }; execute(args: { type: "project" | "section"; items: { id: string; order?: number | undefined; parentId?: string | undefined; }[]; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { type: "project" | "section"; movedCount: number; reorderedCount: number; affectedIds: string[]; success: true; }; }>; }; userInfo: { name: "user-info"; description: string; parameters: {}; outputSchema: { type: import('zod').ZodLiteral<"user_info">; userId: import('zod').ZodString; fullName: import('zod').ZodString; timezone: import('zod').ZodString; currentLocalTime: import('zod').ZodString; startDay: import('zod').ZodNumber; startDayName: import('zod').ZodString; weekStartDate: import('zod').ZodString; weekEndDate: import('zod').ZodString; currentWeekNumber: import('zod').ZodNumber; completedToday: import('zod').ZodNumber; dailyGoal: import('zod').ZodNumber; weeklyGoal: import('zod').ZodNumber; email: import('zod').ZodString; plan: import('zod').ZodEnum<{ "Todoist Free": "Todoist Free"; "Todoist Pro": "Todoist Pro"; "Todoist Business": "Todoist Business"; }>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(_args: Record, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: import('./tools/user-info.js').UserInfoStructured; }>; }; findProjectCollaborators: { name: "find-project-collaborators"; description: string; parameters: { projectId: import('zod').ZodOptional; searchTerm: import('zod').ZodOptional; }; outputSchema: { collaborators: import('zod').ZodArray>; projectInfo: import('zod').ZodOptional>; totalCount: import('zod').ZodNumber; totalAvailable: import('zod').ZodOptional; appliedFilters: import('zod').ZodRecord; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { projectId?: string | undefined; searchTerm?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { collaborators: import('./utils/user-resolver.js').ProjectCollaborator[]; projectInfo: undefined; totalCount: number; totalAvailable: number; appliedFilters: Record; }; } | { textContent: string; structuredContent: { collaborators: never[]; projectInfo: { id: string; name: string; isShared: false; }; totalCount: number; appliedFilters: { projectId?: string | undefined; searchTerm?: string | undefined; }; totalAvailable?: undefined; }; } | { textContent: string; structuredContent: { collaborators: never[]; projectInfo: { id: string; name: string; isShared: true; }; totalCount: number; appliedFilters: { projectId?: string | undefined; searchTerm?: string | undefined; }; totalAvailable?: undefined; }; } | { textContent: string; structuredContent: { collaborators: import('./utils/user-resolver.js').ProjectCollaborator[]; projectInfo: { id: string; name: string; isShared: true; }; totalCount: number; totalAvailable: number; appliedFilters: { projectId?: string | undefined; searchTerm?: string | undefined; }; }; }>; }; manageAssignments: { name: "manage-assignments"; description: string; parameters: { operation: import('zod').ZodEnum<{ assign: "assign"; unassign: "unassign"; reassign: "reassign"; }>; taskIds: import('zod').ZodArray; responsibleUser: import('zod').ZodOptional; fromAssigneeUser: import('zod').ZodOptional; dryRun: import('zod').ZodDefault>; }; outputSchema: { results: import('zod').ZodArray; originalAssigneeId: import('zod').ZodOptional; newAssigneeId: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; summary: import('zod').ZodOptional>; }; annotations: { readOnlyHint: false; destructiveHint: true; idempotentHint: false; }; execute(args: { operation: "assign" | "unassign" | "reassign"; taskIds: string[]; dryRun: boolean; responsibleUser?: string | undefined; fromAssigneeUser?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { operation: "unassign"; results: import('./tools/manage-assignments.js').OperationResult[]; totalRequested: number; successful: number; failed: number; dryRun: boolean; }; } | { textContent: string; structuredContent: { operation: "assign" | "reassign"; results: import('./tools/manage-assignments.js').OperationResult[]; totalRequested: number; successful: number; failed: number; dryRun: boolean; }; }>; }; exportProjectTemplate: { name: "export-project-template"; description: string; parameters: { projectId: import('zod').ZodString; format: import('zod').ZodDefault>; useRelativeDates: import('zod').ZodOptional; }; outputSchema: { format: import('zod').ZodEnum<{ file: "file"; url: "url"; }>; content: import('zod').ZodOptional; lineCount: import('zod').ZodOptional; fileName: import('zod').ZodOptional; fileUrl: import('zod').ZodOptional; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute({ projectId, format, useRelativeDates }: { projectId: string; format: "file" | "url"; useRelativeDates?: boolean | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { format: "url"; fileName: string; fileUrl: string; content?: undefined; lineCount?: undefined; }; } | { textContent: string; structuredContent: { format: "file"; content: string; lineCount: number; fileName?: undefined; fileUrl?: undefined; }; }>; }; importProjectTemplate: { name: "import-project-template"; description: string; parameters: { projectId: import('zod').ZodString; templateId: import('zod').ZodOptional; csvFileContent: import('zod').ZodOptional; locale: import('zod').ZodOptional; }; outputSchema: { sections: import('zod').ZodArray; }, import('zod/v4/core').$strip>>; tasks: import('zod').ZodArray; recurring: import('zod').ZodUnion; deadlineDate: import('zod').ZodOptional; priority: import('zod').ZodEnum<{ p1: "p1"; p2: "p2"; p3: "p3"; p4: "p4"; }>; projectId: import('zod').ZodString; sectionId: import('zod').ZodOptional; parentId: import('zod').ZodOptional; labels: import('zod').ZodOptional>; duration: import('zod').ZodOptional; responsibleUid: import('zod').ZodOptional; isUncompletable: import('zod').ZodOptional; assignedByUid: import('zod').ZodOptional; isDeleted: import('zod').ZodOptional; checked: import('zod').ZodBoolean; completedAt: import('zod').ZodOptional; addedAt: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; comments: import('zod').ZodArray; projectId: import('zod').ZodOptional; content: import('zod').ZodString; postedAt: import('zod').ZodString; postedUid: import('zod').ZodOptional; notifiedUserIds: import('zod').ZodOptional>; fileAttachment: import('zod').ZodOptional; fileSize: import('zod').ZodOptional; fileType: import('zod').ZodOptional; fileUrl: import('zod').ZodOptional; fileDuration: import('zod').ZodOptional; uploadState: import('zod').ZodOptional>; url: import('zod').ZodOptional; title: import('zod').ZodOptional; image: import('zod').ZodOptional; imageWidth: import('zod').ZodOptional; imageHeight: import('zod').ZodOptional; }, import('zod/v4/core').$strip>>; }, import('zod/v4/core').$strip>>; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: false; destructiveHint: false; idempotentHint: false; }; execute({ projectId, templateId, csvFileContent, locale }: { projectId: string; templateId?: string | undefined; csvFileContent?: string | undefined; locale?: string | undefined; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { sections: { id: string; name: string; sectionOrder: number; description?: string | undefined; }[]; tasks: { id: string; content: string; description: string; dueDate: string | undefined; recurring: string | boolean; deadlineDate: string | undefined; priority: "p1" | "p2" | "p3" | "p4"; projectId: string; sectionId: string | undefined; parentId: string | undefined; labels: string[]; duration: string | undefined; responsibleUid: string | undefined; assignedByUid: string | undefined; isDeleted: true | undefined; checked: boolean; completedAt: string | undefined; addedAt: string | undefined; }[]; comments: { id: string; taskId: string | undefined; projectId: string | undefined; content: string; postedAt: string; postedUid: string; notifiedUserIds: string[] | undefined; fileAttachment: { resourceType: string; fileName: string | undefined; fileSize: number | undefined; fileType: string | undefined; fileUrl: string | undefined; fileDuration: number | undefined; uploadState: "completed" | "pending" | undefined; url: string | undefined; title: string | undefined; image: string | undefined; imageWidth: number | undefined; imageHeight: number | undefined; } | undefined; }[]; totalCount: number; }; }>; }; listWorkspaces: { name: "list-workspaces"; description: string; parameters: {}; outputSchema: { type: import('zod').ZodLiteral<"workspaces">; workspaces: import('zod').ZodArray; role: import('zod').ZodOptional>; isLinkSharingEnabled: import('zod').ZodBoolean; isGuestAllowed: import('zod').ZodBoolean; createdAt: import('zod').ZodOptional; creatorId: import('zod').ZodString; }, import('zod/v4/core').$strip>>; count: import('zod').ZodNumber; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(_args: Record, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: import('./tools/list-workspaces.js').WorkspacesStructured; }>; }; search: { name: "search"; description: string; parameters: { query: import('zod').ZodString; }; outputSchema: { results: import('zod').ZodArray>; totalCount: import('zod').ZodNumber; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { query: string; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { results: { id: string; title: string; url: string; }[]; totalCount: number; }; }>; }; fetch: { name: "fetch"; description: string; parameters: { id: import('zod').ZodString; }; outputSchema: { id: import('zod').ZodString; title: import('zod').ZodString; text: import('zod').ZodString; url: import('zod').ZodString; metadata: import('zod').ZodOptional>; }; annotations: { readOnlyHint: true; destructiveHint: false; idempotentHint: true; }; execute(args: { id: string; }, client: import('@doist/todoist-sdk').TodoistApi): Promise<{ textContent: string; structuredContent: { id: string; title: string; text: string; url: string; metadata?: Record; }; }>; }; }; export { addTasks, completeTasks, findTasks, findTasksByDate, findCompletedTasks, rescheduleTasks, addProjects, findProjects, analyzeProjectHealth, projectManagement, projectMove, addSections, findSections, addComments, findComments, addReminders, findReminders, updateReminders, addLabels, findLabels, updateLabels, addFilters, findFilters, findActivity, getProductivityStats, getProjectHealth, getProjectActivityStats, getWorkspaceInsights, findProjectCollaborators, manageAssignments, exportProjectTemplate, importProjectTemplate, listWorkspaces, viewAttachment, deleteObject, fetchObject, getOverview, reorderObjects, userInfo, uncompleteTasks, updateComments, updateFilters, updateProjects, updateSections, updateTasks, search, fetch, getMcpServer, tools, registeredTools, FEATURE_NAMES, type Feature, type FeatureName, type Features, requireValidTodoistToken, type RequireValidTodoistTokenOptions, validateTodoistToken, }; //# sourceMappingURL=index.d.ts.map