README
🚀 RTM MCP 服务器
RTM MCP 服务器是一个具备生产质量的 模型上下文协议(MCP)服务器,专为 Remember The Milk 任务管理系统打造。它能让 Claude 通过自然语言对话来管理你的任务,极大提升任务管理的便捷性和效率。
🚀 快速开始
在使用 RTM MCP 服务器之前,你需要完成安装、设置和配置等步骤。完成这些步骤后,你就可以让 Claude 帮你管理任务啦。
✨ 主要特性
- 全面覆盖 RTM API:提供 30 多种工具,涵盖任务、列表、标签、笔记等多个方面。
- 智能添加语法:支持使用自然语言创建任务,例如
"Call mom ^tomorrow !1 #family"。 - 支持撤销操作:所有写操作都会返回事务 ID,方便你撤销之前的操作。
- 异步高性能:基于 httpx 构建,采用连接池技术,提升性能。
- 类型安全:使用完整的 Pydantic 模型和类型提示,确保代码的安全性和可维护性。
📦 安装指南
使用 uvx(推荐)
uvx rtm-mcp
使用 pip
pip install rtm-mcp
从源代码安装
git clone https://github.com/ljadach/rtm-mcp.git
cd rtm-mcp
uv sync
📚 详细文档
设置步骤
1. 获取 RTM API 凭证
RTM API 密钥需要通过单独的开发者门户获取(不是在你的账户设置中):
- 访问 RTM API 密钥注册页面,你可能需要先登录。
- 点击 "申请 API 密钥"。
- 填写表单,应用名称(例如 "Claude MCP")、描述等信息可随意填写。
- 提交表单后,你会看到 API 密钥 和 共享密钥,请妥善保存。
2. 运行设置命令
rtm-setup
此命令会:
- 提示你输入 API 凭证。
- 打开浏览器进行授权。
- 将授权令牌保存到
~/.config/rtm-mcp/config.json文件中。
3. 配置 Claude 桌面应用
在 ~/.config/claude/claude_desktop_config.json 文件中添加以下内容:
{
"mcpServers": {
"rtm": {
"command": "uvx",
"args": ["rtm-mcp"]
}
}
}
使用方法
配置完成后,你可以向 Claude 发出以下指令来管理任务:
- "Show my tasks due today"(显示今天到期的任务)
- "Add a task to buy groceries tomorrow, high priority"(添加一个明天购买食品杂货的高优先级任务)
- "Complete the grocery task"(完成购买食品杂货的任务)
- "What high priority tasks do I have?"(我有哪些高优先级任务?)
- "Move the meeting prep task to my Work list"(将会议准备任务移动到我的工作列表中)
- "Add a note to the project task"(为项目任务添加一条笔记)
智能添加语法
在添加任务时,可以使用 RTM 的智能添加语法:
| 符号 | 含义 | 示例 |
| ---- | ---- | ---- |
| ^ | 截止日期 | ^tomorrow(明天), ^next friday(下周五) |
| ! | 优先级 | !1(高), !2(中), !3(低) |
| # | 标签 | #work(工作), #urgent(紧急) |
| @ | 位置 | @home(家), @office(办公室) |
| = | 预估时间 | =30min(30 分钟), =2h(2 小时) |
| * | 重复周期 | *daily(每天), *every monday(每周一) |
示例:"Review report ^friday !1 #work =1h *weekly"(周五审查报告,高优先级,工作标签,预计 1 小时,每周重复)
可用工具
任务管理
list_tasks- 按条件列出任务add_task- 创建新任务complete_task/uncomplete_task- 标记任务为已完成或重新打开delete_task- 删除任务postpone_task- 将截止日期推迟一天move_task- 将任务移动到不同的列表set_task_name- 重命名任务set_task_due_date- 修改截止日期set_task_priority- 设置优先级set_task_recurrence- 设置重复模式set_task_start_date- 设置开始日期set_task_estimate- 设置预估时间set_task_url- 附加 URLadd_task_tags/remove_task_tags- 管理任务标签
笔记管理
add_note- 为任务添加笔记edit_note- 编辑现有笔记delete_note- 删除笔记get_task_notes- 查看所有笔记
列表管理
get_lists- 列出所有列表add_list- 创建新列表rename_list- 重命名列表delete_list- 删除列表archive_list/unarchive_list- 归档管理set_default_list- 设置默认列表
实用工具
test_connection- 测试 API 连接性check_auth- 验证身份验证get_tags- 列出所有标签get_locations- 列出保存的位置get_settings- 查看用户设置get_contacts/get_groups- 联系人管理parse_time- 解析自然语言时间undo- 撤销上一步操作
配置说明
环境变量
RTM_API_KEY=your_api_key
RTM_SHARED_SECRET=your_shared_secret
RTM_AUTH_TOKEN=your_token
配置文件
~/.config/rtm-mcp/config.json 文件内容如下:
{
"api_key": "your_api_key",
"shared_secret": "your_shared_secret",
"token": "your_token"
}
开发相关
# 安装开发依赖
make dev
# 运行代码检查
make lint
# 运行测试
make test
# 运行测试并生成覆盖率报告
make test/coverage
# 格式化代码
make format
Docker 使用
docker build -t rtm-mcp .
docker run -it --rm \
-e RTM_API_KEY \
-e RTM_SHARED_SECRET \
-e RTM_AUTH_TOKEN \
rtm-mcp
Claude 桌面应用的 Docker 配置如下:
{
"mcpServers": {
"rtm": {
"command": "docker",
"args": ["run", "-i", "--rm",
"-e", "RTM_API_KEY",
"-e", "RTM_SHARED_SECRET",
"-e", "RTM_AUTH_TOKEN",
"rtm-mcp"]
}
}
}
📄 许可证
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
🙏 致谢
- Remember The Milk 提供了出色的任务管理服务。
- FastMCP 提供了 MCP 框架。
- Anthropic 提供了 Claude 和 MCP 规范。
Scan to join WeChat group