Todoist MCP 服务器

一个连接Todoist API与AI助手(如Claude)的模型上下文协议服务器,通过自然语言对话管理Todoist项目、部分、任务和标签。

  • by koki-develop
  • TypeScript
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 koki-develop/todoist-mcp-server

使用说明

Todoist MCP服务器

A. 模型上下文协议(MCP)服务器 将Todoist API与Claude等人工智能助手连接起来。此服务器使AI助手能够与您的Todoist项目、部分、任务和标签进行交互,使您能够通过自然语言对话管理整个生产力工作流程。

Todoist MCP服务器在人工智能助手和Todoist工作区之间架起了一座桥梁,通过对话界面实现了无缝的项目、部分、任务和标签管理。

目录

先决条件

在使用此MCP服务器之前,您需要 Todoist API令牌:

  1. 首选 Todoist开发人员设置
  2. 复制您的API令牌

用法

要将此服务器与MCP客户端一起使用,请添加以下配置:

{
  "mcpServers": {
    "todoist": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "TODOIST_API_TOKEN=<your_api_token_here>",
        "ghcr.io/koki-develop/todoist-mcp-server:latest"
      ]
    }
  }
}

替换 <your_api_token_here> 使用您的实际Todoist API令牌。

MCP工具

服务器提供以下工具,AI助手可以使用这些工具与您的Todoist数据进行交互:

项目

get_projects

检索经过身份验证的用户可访问的所有Todoist项目。返回全面的项目信息,包括个人和工作区项目,以及名称、颜色、收藏夹状态、视图样式和层次结构信息等元数据。

get_project

使用特定Todoist项目的唯一标识符访问其详细信息。提供完整的项目元数据,包括配置、层次结构和组织详细信息。

create_project

使用可自定义的设置创建新的Todoist项目。

update_project

修改现有Todoist项目的属性。

delete_project

通过Todoist项目的唯一标识符永久删除该项目。此操作将删除项目以及所有关联的任务、部分和注释。 此操作无法撤消。

章节

get_sections

检索特定Todoist项目中的所有部分。返回一个完整的节列表及其元数据,如名称、顺序、创建和更新时间戳以及状态信息。各节将按其在项目中的显示顺序返回。

get_section

使用特定Todoist部分的唯一标识符访问其详细信息。提供完整的节元数据,包括名称、项目分配、订单位置、时间戳和状态标志。

create_section

在Todoist项目中创建一个新部分来组织任务。章节有助于对项目中的相关任务进行分类和分组。

update_section

修改现有Todoist节的名称。目前,只能更新节名称。

delete_section

通过Todoist部分的唯一标识符永久删除该部分。此操作将删除该部分,并将该部分中的任何任务移动到项目的主区域。 此操作无法撤消。

任务

get_tasks

使用灵活的筛选选项检索Todoist任务。返回任务及其元数据的完整列表,包括内容、描述、项目分配、截止日期、优先级、标签、完成状态和层次结构信息。如果没有过滤器,则返回经过身份验证的用户可访问的所有任务。

get_tasks_by_filter

使用高级筛选器语法检索Todoist任务。支持使用Todoist的自然语言过滤语法进行复杂任务搜索的强大过滤查询。自动处理分页以检索所有匹配的任务。

get_task

使用特定Todoist任务的唯一标识符访问其详细信息。提供完整的任务元数据,包括内容、描述、项目和部分分配、截止日期信息、优先级、分配的标签、完成状态、父子关系和时间戳。

create_task

创建具有全面配置选项的新Todoist任务。

update_task

修改现有Todoist任务的属性。

delete_task

通过Todoist任务的唯一标识符永久删除该任务。此操作将删除任务以及所有相关的注释和附件。如果任务有子任务,它们也将被删除。 此操作无法撤消。

close_task

将Todoist任务标记为已完成。此操作将任务移动到已完成状态,同时保留所有任务数据和历史记录。如果需要,可以稍后重新打开已完成的任务。

reopen_task

重新打开以前完成的Todoist任务,使其返回活动状态。此操作将任务恢复到完成前的状态。

move_tasks_to_project

将多个任务移动到Todoist中的不同项目。此工具通过同时更改多个任务的项目分配,实现了高效的批量任务重组。所有指定的任务将从其当前位置移动到目标项目。

move_tasks_to_section

将多个任务移动到Todoist中的不同部分。此工具允许通过一次更改多个任务的部分分配来组织批量任务。所有指定的任务将从其当前位置移动到目标部分。

move_tasks_to_parent

将多个任务移动为Todoist中另一个任务的子任务。此工具通过使多个任务成为指定父任务的子任务来创建任务层次结构。所有指定的任务都将转换为目标父级的子任务。

标签

create_label

创建具有可自定义属性的新个人标签,包括名称、颜色、显示顺序和收藏夹状态。标签可用于跨项目对任务进行分类和组织。

update_label

修改现有个人标签的属性。允许您更改标签的名称、颜色、显示顺序和收藏状态。除标签ID之外的所有参数都是可选的,因此您只能更新要更改的特定属性。

get_label

通过其唯一ID检索特定的个人标签,该标签包含完整的元数据,包括名称、颜色、顺序和收藏状态。返回有关在任务组织和筛选中使用的请求标签的详细信息。需要属于经过身份验证的用户的有效标签ID。

get_labels

检索经过身份验证的用户可访问的所有个人标签及其完整的元数据,包括名称、颜色、顺序和收藏状态。返回可用于任务组织和筛选的标签的完整列表。此工具提供对标签信息的只读访问,并自动处理分页。

delete_label

通过其唯一标识符永久删除个人标签。 警告:此操作不可逆转 并将自动从所有相关任务中删除标签。请谨慎使用,因为已删除的标签无法恢复。

评论

create_task_comment

为特定的Todoist任务添加评论。支持富文本内容和可选文件附件。成功创建后,返回包含所有元数据的完整注释对象。

create_project_comment

向特定Todoist项目添加注释。支持富文本内容和可选文件附件。成功创建后,返回包含所有元数据的完整注释对象。

update_comment

更新Todoist中现有评论的内容。这允许您修改任务或项目注释的文本内容。 评论的元数据(如发布时间、作者和附件)将被保留。 返回具有当前内容的更新评论对象。

get_task_comments

检索与特定Todoist任务关联的所有评论。返回一个完整的评论列表及其元数据,包括内容、作者信息、时间戳、文件附件和反应。评论按时间顺序返回。自动处理分页以检索任务的所有注释。

get_project_comments

检索与特定Todoist项目关联的所有评论。返回项目级注释的完整列表及其元数据,包括内容、作者信息、时间戳、文件附件和反应。评论按时间顺序返回。自动处理分页以检索项目的所有注释。

delete_comment

通过注释的唯一标识符永久删除注释。此操作将从其关联的任务或项目中删除注释。 此操作无法撤消,因此请谨慎使用。 返回成功删除的确认或失败通知。

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

版权所有(c)2025佐藤