此模型上下文协议(MCP)服务器允许您使用Claude Desktop与来自Cultured Code的Things 3任务管理数据进行交互。您可以要求Claude创建任务、分析项目、帮助管理优先级等。
该服务器利用了Things.py库和Things URL Scheme。
<a href="https://glama.ai/mcp/servers/t9cgixg2ah"><img width="380" height="200" src="https://gips3.baidu.com/it/u=903968790,3060702876&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Things Server MCP server" /></a>
如果您发现这个项目有用,请考虑支持其开发:
桌面扩展(.dxt)提供了最简单的MCP服务器安装方式。
things-mcp-0.4.0.dxt文件.dxt文件以在Claude Desktop中安装它就这样!DXT包包括所有Python依赖项,并自动处理配置。
要使用Claude Code或其他MCP客户端设置Things MCP,请滚动到手动安装部分。
安装后:
get-inbox - 获取收件箱中的待办事项get-today - 获取今日到期的待办事项get-upcoming - 获取即将到期的待办事项get-anytime - 获取任意时间列表中的待办事项get-someday - 获取某天列表中的待办事项get-logbook - 获取已完成的待办事项get-trash - 获取已删除的待办事项get-todos - 获取待办事项,可选过滤项目get-projects - 获取所有项目get-areas - 获取所有区域get-tags - 获取所有标签get-tagged-items - 获取具有特定标签的项目search-todos - 通过标题/备注进行简单搜索search-advanced - 多个过滤器的高级搜索get-recent - 获取最近创建的项目add-todo - 创建新的待办事项add-project - 创建新的项目update-todo - 更新现有的待办事项update-project - 更新现有的项目show-item - 显示Things中的特定项目或列表search-items - 在Things中搜索项目project_uuid(可选) - 通过项目过滤待办事项include_items(可选,默认:true) - 包含检查清单项目include_items(可选,默认:false) - 包含所含项目status - 通过状态过滤(未完成/已完成/已取消)start_date - 通过开始日期过滤(YYYY-MM-DD)deadline - 通过截止日期过滤(YYYY-MM-DD)tag - 通过标签过滤area - 通过区域UUID过滤type - 通过项目类型过滤(待办事项/项目/标题)period - 时间段(例如,'3d','1w','2m','1y')对于偏好从源代码安装的高级用户:
首先,确保已安装Homebrew:
# 检查是否已安装Homebrew
brew --version
# 如果未安装,安装Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
然后安装uv(如果尚未安装):
brew install uv
选择一个您想要安装Things MCP的位置。例如,要在您的主目录中安装:
cd ~
git clone https://github.com/hald/things-mcp
cd things-mcp
重要:记住这个位置!您需要完整的路径。可以通过运行以下命令获取:
pwd
这将显示类似这样的内容:/Users/yourusername/things-mcp
uv sync
mcpServers部分添加Things服务器:{
"mcpServers": {
"things": {
"command": "uv",
"args": [
"--directory",
"/Users/yourusername/things-mcp",
"run",
"things_server.py"
]
}
}
}
替换/Users/yourusername/things-mcp为第二步中的实际路径!
注意:如果您使用的是Homebrew之外安装的uv,您可能需要在MCP配置中使用uv的完整路径。常见位置包括:
~/.local/bin/uv 或 ~/.cargo/bin/uv要找到您的uv位置,运行:
which uv
在您的终端中运行:
claude mcp add-json things '{"command":"uv","args":["--directory","/path/to/things-mcp","run","things_server.py"]}'
替换/path/to/things-mcp为第二步中的实际路径!
要使其全局可用(跨所有项目),添加-s user:
claude mcp add-json -s user things '{"command":"uv","args":["--directory","/path/to/things-mcp","run","things_server.py"]}'
重启您的MCP客户端后:
如果不起作用:
确保已安装Things 3并且至少打开过一次
检查是否开启了“启用Things URL”
验证配置中的路径与您克隆仓库的位置匹配
/开头)pwd以获取正确的路径检查Claude的日志是否有错误:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
常见问题:
brew install uv)uv syncbrew install uv要更新到最新版本:
cd ~/things-mcp # 或者您安装它的任何地方
git pull
uv sync
然后重启Claude。
该项目包括针对URL方案和格式化模块的全面单元测试套件。
# 安装测试依赖项
uv sync --extra test
# 运行所有测试
uv run pytest
# 运行带有详细输出的测试
uv run pytest -v
# 运行特定的测试文件
uv run pytest tests/test_url_scheme.py
# 运行符合模式的测试
uv run pytest -k "test_add_todo"
things-mcp/
├── things_server.py # 主MCP服务器实现
├── url_scheme.py # Things URL方案实现
├── formatters.py # 数据格式化工具
├── tests/ # 单元测试
│ ├── conftest.py # 测试夹具和配置
│ ├── test_url_scheme.py
│ └── test_formatters.py
├── manifest.json # DXT包清单
├── build_dxt.sh # DXT包构建脚本
├── pyproject.toml # 项目依赖项和pytest配置
└── run.sh # 方便的运行脚本
要查看Claude Desktop中的MCP日志,请在终端中运行:
# 实时跟随日志
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log