Todoist自动化技能Skill todoist-automation

这个技能通过Rube MCP自动化Todoist任务管理,包括任务创建、项目组织、分区管理、过滤和批量操作,适用于业务生产力提升。关键词:Todoist自动化,Rube MCP,任务管理,批量操作,业务生产力。

其他 0 次安装 0 次浏览 更新于 3/8/2026

名称: todoist-automation 描述: 通过Rube MCP自动化Todoist任务管理、项目、分区、过滤和批量操作。始终首先搜索工具以获取当前模式。 需要: mcp: [rube] 类别: 业务生产力

通过Rube MCP的Todoist自动化

自动化Todoist操作,包括任务创建和管理、项目组织、分区管理、过滤和批量任务工作流,通过Composio的Todoist工具包。

工具包文档: composio.dev/toolkits/todoist

先决条件

  • Rube MCP必须已连接(RUBE_SEARCH_TOOLS可用)
  • 通过RUBE_MANAGE_CONNECTIONS与工具包todoist建立有效的Todoist连接
  • 始终先调用RUBE_SEARCH_TOOLS以获取当前工具模式

设置

获取Rube MCP: 在客户端配置中添加https://rube.app/mcp作为MCP服务器。无需API密钥—只需添加端点即可工作。

  1. 验证Rube MCP可用,确认RUBE_SEARCH_TOOLS响应
  2. 调用RUBE_MANAGE_CONNECTIONS与工具包todoist
  3. 如果连接不是ACTIVE,请按照返回的认证链接完成Todoist OAuth
  4. 在运行任何工作流之前,确认连接状态显示为ACTIVE

核心工作流

1. 创建和管理任务

使用时机: 用户想要创建、更新、完成、重新打开或删除任务

工具顺序:

  1. TODOIST_GET_ALL_PROJECTS - 列出项目以找到目标项目ID [先决条件]
  2. TODOIST_GET_ALL_SECTIONS - 列出项目中的分区以放置任务 [可选]
  3. TODOIST_CREATE_TASK - 创建单个任务,包含内容、截止日期、优先级、标签 [必需]
  4. TODOIST_BULK_CREATE_TASKS - 在一个请求中创建多个任务 [替代方案]
  5. TODOIST_UPDATE_TASK - 修改任务属性(内容、截止日期、优先级、标签) [可选]
  6. TODOIST_CLOSE_TASK - 将任务标记为已完成 [可选]
  7. TODOIST_REOPEN_TASK - 恢复之前已完成的任务 [可选]
  8. TODOIST_DELETE_TASK - 永久删除任务 [可选]

CREATE_TASK的关键参数:

  • content: 任务标题(支持Markdown和超链接)
  • description: 附加说明(请勿在此放置截止日期)
  • project_id: 字母数字项目ID;省略以添加到收件箱
  • section_id: 字母数字分区ID,用于在项目内放置任务
  • parent_id: 任务ID,用于创建子任务
  • priority: 1(正常)到4(紧急)—注意:Todoist UI显示p1=紧急,API p4=紧急
  • due_string: 自然语言日期,如“明天下午3点”、“每周五上午9点”
  • due_date: 特定日期 YYYY-MM-DD 格式
  • due_datetime: 特定日期+时间,RFC3339 YYYY-MM-DDTHH:mm:ssZ 格式
  • labels: 标签名称字符串数组
  • duration + duration_unit: 任务持续时间(例如,30 + "minute"

陷阱:

  • 一次只能使用一个due_*字段(除了due_lang,它可以伴随任何字段)
  • 请勿将截止日期嵌入contentdescription中—使用due_string字段
  • 请勿将持续时间短语如“for 30 minutes”嵌入due_string—使用duration + duration_unit
  • API中的priority: 1=正常,4=紧急(与Todoist UI显示相反,p1=紧急)
  • 任务ID可以是数字或字母数字;使用API返回的格式
  • CLOSE_TASK标记完成;DELETE_TASK永久删除—它们是不同的操作

2. 管理项目

使用时机: 用户想要列出、创建、更新或检查项目

工具顺序:

  1. TODOIST_GET_ALL_PROJECTS - 列出所有项目及其元数据 [必需]
  2. TODOIST_GET_PROJECT - 通过ID获取特定项目详情 [可选]
  3. TODOIST_CREATE_PROJECT - 创建新项目,包含名称、颜色、视图样式 [可选]
  4. TODOIST_UPDATE_PROJECT - 修改项目属性 [可选]

关键参数:

  • name: 项目名称(创建时必需)
  • color: Todoist调色板颜色(例如,“blue”、“red”、“green”、“charcoal”)
  • view_style: “list”或“board”布局
  • parent_id: 父项目ID,用于创建子项目
  • is_favorite / favorite: 布尔值,标记为收藏
  • project_id: 更新和获取操作时必需

陷阱:

  • 名称相似的项目可能导致选择错误的project_id;始终验证
  • CREATE_PROJECT使用favorite,而UPDATE_PROJECT使用is_favorite—字段名不同
  • 使用API返回的项目id,而不是v2_id,进行下游操作
  • 字母数字/URL风格的项目ID在某些工具中可能导致HTTP 400错误;尽可能使用数字ID

3. 管理分区

使用时机: 用户想要使用分区在项目内组织任务

工具顺序:

  1. TODOIST_GET_ALL_PROJECTS - 找到目标项目ID [先决条件]
  2. TODOIST_GET_ALL_SECTIONS - 列出现有分区以避免重复 [先决条件]
  3. TODOIST_CREATE_SECTION - 在项目中创建新分区 [必需]
  4. TODOIST_UPDATE_SECTION - 重命名现有分区 [可选]
  5. TODOIST_DELETE_SECTION - 永久删除分区 [可选]

关键参数:

  • project_id: 必需—创建分区的项目
  • name: 分区名称(创建时必需)
  • order: 整数位置,项目内的顺序(值较低的先出现)
  • section_id: 更新和删除操作时必需

陷阱:

  • CREATE_SECTION需要project_idname—省略project_id会导致400错误
  • 如果使用字母数字ID,可能发生HTTP 400“project_id无效”错误;优先使用数字ID
  • 删除分区可能以不明显的方式移动或重新分组其任务
  • 响应可能同时包含idv2_id;始终存储和重复使用正确的标识符
  • 始终首先检查现有分区以避免创建重复项

4. 搜索和过滤任务

使用时机: 用户想要通过标准查找任务、查看今日任务或获取已完成任务历史

工具顺序:

  1. TODOIST_GET_ALL_TASKS - 获取未完成任务,可选过滤查询 [必需]
  2. TODOIST_GET_TASK - 通过ID获取特定任务完整详情 [可选]
  3. TODOIST_GET_COMPLETED_TASKS_BY_COMPLETION_DATE - 检索特定日期范围内已完成的任务 [可选]
  4. TODOIST_LIST_FILTERS - 列出用户的自定义保存过滤器 [可选]

GET_ALL_TASKS的关键参数:

  • filter: Todoist过滤语法字符串
    • 关键字: today(今天)、tomorrow(明天)、overdue(逾期)、no date(无日期)、recurring(重复)、subtask(子任务)
    • 优先级: p1(紧急)、p2p3p4(正常)
    • 项目: #ProjectName(必须在账户中存在)
    • 标签: @LabelName(必须在账户中存在)
    • 日期范围: 7 days(7天)、-7 days(-7天)、due before: YYYY-MM-DD(截止前)、due after: YYYY-MM-DD(截止后)
    • 搜索: search: keyword 用于内容文本搜索
    • 操作符: &(与)、|(或)、!(非)
  • ids: 要检索的特定任务ID列表

GET_COMPLETED_TASKS_BY_COMPLETION_DATE的关键参数:

  • since: 开始日期,RFC3339格式(例如,2024-01-01T00:00:00Z
  • until: 结束日期,RFC3339格式
  • project_idsection_idparent_id: 可选过滤器
  • cursor: 来自先前响应的分页游标
  • limit: 每页最大结果数(默认50)

陷阱:

  • GET_ALL_TASKS仅返回未完成任务;使用GET_COMPLETED_TASKS_BY_COMPLETION_DATE获取已完成任务
  • 过滤项必须引用实际存在的实体;任意文本会导致HTTP 400错误
  • 请勿在GET_ALL_TASKS过滤器中使用completed(已完成)、!completed(未完成)或completed after(完成后)—会导致400错误
  • GET_COMPLETED_TASKS_BY_COMPLETION_DATE限制日期范围在sinceuntil之间大约3个月
  • 搜索使用过滤器内的search: keyword语法,而非单独参数

5. 批量任务创建

使用时机: 用户想要一次性搭建一个包含多个任务的项目

工具顺序:

  1. TODOIST_GET_ALL_PROJECTS - 找到目标项目ID [先决条件]
  2. TODOIST_GET_ALL_SECTIONS - 找到任务放置的分区ID [可选]
  3. TODOIST_BULK_CREATE_TASKS - 在单个请求中创建多个任务 [必需]

关键参数:

  • tasks: 任务对象数组,每个至少需要content
  • 每个任务对象支持: contentdescriptionproject_idsection_idparent_idprioritylabelsdue(对象,包含stringdatedatetime)、durationorder

陷阱:

  • 数组中的每个任务必须至少拥有content字段
  • 批量创建中的due字段是一个具有嵌套字段(stringdatedatetimelang)的对象—与CREATE_TASK的平面字段结构不同
  • 同一批次中的所有任务可以针对不同的项目/分区

常见模式

ID解析

操作前始终将人类可读名称解析为ID:

  • 项目名称 -> 项目ID: TODOIST_GET_ALL_PROJECTS,通过name字段匹配
  • 分区名称 -> 分区ID: TODOIST_GET_ALL_SECTIONSproject_id
  • 任务内容 -> 任务ID: TODOIST_GET_ALL_TASKSfiltersearch: keyword

分页

  • TODOIST_GET_ALL_TASKS: 返回所有匹配的未完成任务(无需分页)
  • TODOIST_GET_COMPLETED_TASKS_BY_COMPLETION_DATE: 使用基于游标的分页;遵循响应中的cursor直到没有更多结果
  • TODOIST_GET_ALL_PROJECTSTODOIST_GET_ALL_SECTIONS: 返回所有结果(无分页)

截止日期处理

  • 自然语言: 使用due_string(例如,“明天下午3点”、“每周一”)
  • 特定日期: 使用due_dateYYYY-MM-DD格式
  • 特定日期时间: 使用due_datetime,RFC3339格式(YYYY-MM-DDTHH:mm:ssZ
  • 一次只能使用一个截止字段(除了due_lang,它可以伴随任何字段)
  • 重复任务: 在due_string中使用自然语言(例如,“每周五上午9点”)

已知陷阱

ID格式

  • 任务ID可以是数字(“2995104339”)或字母数字(“6X4Vw2Hfmg73Q2XR”)
  • 项目ID类似;优先使用API返回的格式
  • 某些工具仅接受数字ID;如果发生400错误,请尝试通过GET_PROJECT获取数字id
  • 响应对象可能同时包含idv2_id;使用id进行API操作

优先级反转

  • API优先级: 1 = 正常,4 = 紧急
  • Todoist UI显示: p1 = 紧急,p4 = 正常
  • 这是相反的;始终与用户澄清他们意指哪种约定

过滤语法

  • 过滤项必须引用用户账户中的真实实体
  • #NonExistentProject(不存在项目)或@NonExistentLabel(不存在标签)将导致HTTP 400
  • 使用search: keyword进行文本搜索,而非裸关键字
  • &(与)、|(或)、!(非)组合
  • completed(已完成)过滤器在GET_ALL_TASKS端点上无效

速率限制

  • Todoist API有速率限制;尽可能使用BULK_CREATE_TASKS进行批量操作
  • 为避免节流,请间隔开快速连续请求

快速参考

任务 工具标识符 关键参数
列出所有项目 TODOIST_GET_ALL_PROJECTS (无)
获取项目 TODOIST_GET_PROJECT project_id
创建项目 TODOIST_CREATE_PROJECT namecolorview_style
更新项目 TODOIST_UPDATE_PROJECT project_idnamecolor
列出分区 TODOIST_GET_ALL_SECTIONS project_id
创建分区 TODOIST_CREATE_SECTION project_idnameorder
更新分区 TODOIST_UPDATE_SECTION section_idname
删除分区 TODOIST_DELETE_SECTION section_id
获取所有任务 TODOIST_GET_ALL_TASKS filterids
获取任务 TODOIST_GET_TASK task_id
创建任务 TODOIST_CREATE_TASK contentproject_iddue_stringpriority
批量创建任务 TODOIST_BULK_CREATE_TASKS tasks(数组)
更新任务 TODOIST_UPDATE_TASK task_idcontentdue_string
完成任务 TODOIST_CLOSE_TASK task_id
重新打开任务 TODOIST_REOPEN_TASK task_id
删除任务 TODOIST_DELETE_TASK task_id
已完成任务 TODOIST_GET_COMPLETED_TASKS_BY_COMPLETION_DATE sinceuntil
列出过滤器 TODOIST_LIST_FILTERS sync_token

Composio提供支持