使用说明
TickTick MCP服务器
提供与TickTick任务管理服务集成的模型上下文协议(MCP)服务器。
特性
- 通过增强显示列出任务和项目(人类可读的优先级)
- 创建、更新和删除任务
- 将任务标记为已完成
- 获取特定任务的详细信息
- 时区处理,手动D+1调整,准确计算到期日
- 使用可配置的时区偏移获取逾期任务
- 通过适当的时区补偿获得今天的任务
- OAuth和用户名/密码身份验证支持
- 完全支持TypeScript,并具有适当的错误处理功能
设置
- 安装依赖项:
npm install
- 创建环境配置:
cp .env.example .env
- 在中配置身份验证
.env:
选项A:OAuth(推荐)
TICKTICK_ACCESS_TOKEN=your_oauth_access_token
TICKTICK_REFRESH_TOKEN=your_refresh_token
TICKTICK_CLIENT_ID=your_client_id
TICKTICK_CLIENT_SECRET=your_client_secret
选项B:用户名/密码
TICKTICK_USERNAME=your_ticktick_username
TICKTICK_PASSWORD=your_ticktick_password
有关OAuth设置,请参阅 OAUTH_SETUP.md 或使用助手:
node oauth-helper.js
- 构建项目:
npm run build
用法
发展
npm run dev
生产
npm start
可用工具
get_tasks-从特定项目获取所有任务或任务(具有增强的显示功能)get_overdue_tasks-使用时区补偿获取逾期任务(可配置偏移,默认为UTC+8-根据您的时区进行调整)get_todays_tasks-通过D+1时区调整获得今天到期的任务get_projects-从TickTick获取所有项目create_task-创建具有优先级、标签和截止日期的新任务update_task-更新现有任务delete_task-删除任务complete_task-将任务标记为已完成get_task-按ID获取特定任务
时区处理
此服务器包括 手动时区解决方法 处理TickTick的时区不一致:
- D+1调整:截止日期会自动调整,增加1天以补偿时区差异
- 可配置偏移:
get_overdue_tasks接受atimezoneOffsetHours参数- 默认:8(UTC+8)- 根据您的时区更改此设置!
- 例子:
timezoneOffsetHours: -5EST(UTC-5)timezoneOffsetHours: 0对于UTCtimezoneOffsetHours: 9对于JST(UTC+9)timezoneOffsetHours: 1CET(UTC+1)
- 全天任务与定时任务:全天任务与特定时间任务的处理方式不同
- 增强型显示器:任务包括人类可读的优先级文本(
None,Low,Medium,High)
重要:默认时区偏移设置为UTC+8。请确保在呼叫时指定正确的时区偏移 get_overdue_tasks 以获得您所在位置的准确结果。
MCP集成
克劳德桌面(带克劳德桌面应用程序)
将此服务器添加到MCP客户端配置文件中:
地点: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
{
"mcpServers": {
"ticktick": {
"command": "node",
"args": ["/path/to/ticktick-mcp-server/dist/index.js"],
"env": {
"TICKTICK_ACCESS_TOKEN": "your_oauth_token",
"TICKTICK_REFRESH_TOKEN": "your_refresh_token",
"TICKTICK_CLIENT_ID": "your_client_id",
"TICKTICK_CLIENT_SECRET": "your_client_secret"
}
}
}
}
光标IDE
将此服务器添加到您的Cursor MCP配置中:
地点: 创建/编辑 .cursorrules 或MCP服务器的光标设置
{
"mcp": {
"servers": {
"ticktick": {
"command": "node",
"args": ["/path/to/ticktick-mcp-server/dist/index.js"],
"env": {
"TICKTICK_ACCESS_TOKEN": "your_oauth_token",
"TICKTICK_REFRESH_TOKEN": "your_refresh_token",
"TICKTICK_CLIENT_ID": "your_client_id",
"TICKTICK_CLIENT_SECRET": "your_client_secret"
}
}
}
}
}
用户名/密码替代
{
"env": {
"TICKTICK_USERNAME": "your_username",
"TICKTICK_PASSWORD": "your_password"
}
}
许可证
麻省理工学院