基于滴答清单官方提供的文档实现日志增删改查
731 查看 · 2026-07-07 更新
简介
基于滴答清单官方提供的文档实现日志增删改查
简介
基于滴答清单官方提供的文档实现日志增删改查
滴答清单 MCP 服务
这是一个为滴答清单(TickTick/Dida365)开发的 Model Context Protocol (MCP) 服务器,使用 TypeScript 编写。该服务允许 AI 助手通过标准化接口与滴答清单 API 进行交互。
功能特性
- ✅ 创建、读取、更新、删除任务
- ✅ 管理项目和项目列表
- ✅ 支持任务优先级和截止日期
- ✅ 通过环境变量安全配置 API Token
- ✅ 完整的 TypeScript 类型支持
- ✅ 错误处理和API响应验证
快速开始
使用MCP (Node版本)
DIDA官方获取token
下载
bash npm i dida365-mcp-servers
配置json文件
json "dida365": { "command": "node", "args": [ //your download path ; example:C:\nvm4w\nodejs\node_modules\dida365-mcp-servers\dist ], "env": { "DIDA365_TOKEN": your TOKEN } }
使用本地
1. 安装依赖
bash npm install
2. 配置环境变量
复制示例环境变量文件:
bash cp .env.example .env
编辑 .env 文件,添加你的滴答清单 API Token:
bash DIDA365_TOKEN=Bearer your_token_here
3. 获取 API Token
- 访问 滴答清单开放平台
- 登录你的滴答清单账号
- 创建新应用
- 获取访问令牌(Access Token)
- 将令牌添加到
.env文件中
4. 构建和运行
开发模式:
bash npm run dev
生产模式:
bash npm run build npm start
可用工具
任务管理
create_task - 创建新任务
- 参数:
title(string, 必需): 任务标题projectId(string, 必需): 项目IDcontent(string): 任务内容描述dueDate(string): 截止日期 (ISO 8601格式)priority(number): 优先级 (0-5)
get_task_by_projectId_and_taskId - 通过项目ID和任务ID获取任务
- 参数:
projectId(string, 必需): 项目IDtaskId(string, 必需): 任务ID
get_tasks_by_projectId - 通过项目ID获取项目中的任务列表
- 参数:
projectId(string, 必需): 项目ID
update_task - 更新任务
- 参数:
taskId(string, 必需): 任务IDtitle(string): 任务标题content(string): 任务内容dueDate(string): 截止日期priority(number): 优先级status(number): 任务状态 (0: 未完成, 1: 已完成)
delete_task - 删除任务
- 参数:
taskId(string, 必需): 任务IDprojectId(string, 必需): 项目ID
complete_task - 完成任务
- 参数:
taskId(string, 必需): 任务IDprojectId(string, 必需): 项目ID
项目管理
get_projects - 获取项目列表
- 参数: 无
get_project_by_projectId - 根据项目ID获取项目
- 参数:
projectId(string, 必需): 项目ID
create_project - 创建新项目
- 参数:
name(string, 必需): 项目名称color(string): 项目颜色, 例如 "#F18181"sortOrder(integer): 排序值, 默认为0viewMode(string): 视图模式 ("list", "kanban", "timeline")kind(string): 项目类型 ("TASK", "NOTE")
update_project_by_projectID - 根据projectId更新项目
- 参数:
projectId(string, 必需): 项目IDname(string): 项目名称color(string): 项目颜色sortOrder(integer): 排序值, 默认为0viewMode(string): 视图模式 ("list", "kanban", "timeline")kind(string): 项目类型 ("TASK", "NOTE")
update_project_by_projectID - 根据projectId删除项目
- 参数:
projectId(string, 必需): 项目ID
可用资源
dida365://tasks
获取所有任务的JSON格式概览### dida365://projects
获取所有项目的JSON格式概览
项目结构
├── src/ │ └── index.ts # 主服务器文件 ├── dist/ # 编译输出目录 ├── .env.example # 环境变量示例 ├── package.json # 项目配置 ├── tsconfig.json # TypeScript 配置 └── README.md # 项目文档
API 接口说明
本服务使用滴答清单官方 API:
- 基础URL:
https://api.dida365.com/open/v1 - 认证方式: Bearer Token
- 请求格式: JSON
- 官方文档: https://developer.dida365.com/api#/openap
错误处理
服务包含完整的错误处理机制:
- API 调用失败时返回详细错误信息
- 网络错误和超时处理
- 参数验证和类型检查
- Token 验证
开发说明
贡献
欢迎提交 Issue 和 Pull Request!
服务配置
[{'mcpServers': {'dida365': {'args': ['yourPath'], 'command': 'node', 'env': {'DIDA365_TOKEN': 'yourToken'}}}}]