返回市场
事物-mcp

事物-mcp

作者:jimfilippou6 星标更新:2025-09-29

项目介绍

Things MCP 服务器

信任评分

这是一个模型上下文协议(MCP)服务器,提供与Things生产力应用程序的无缝集成。此服务器使AI助手能够使用其全面的URL方案在Things中创建、更新和管理待办事项和项目。

功能

  • 完整的Things URL方案支持 - 完整实现了所有的Things URL命令
  • 创建待办事项 - 添加单个或多个带有丰富元数据的待办事项
  • 创建项目 - 构建带有嵌套待办事项和组织的项目
  • 更新项目 - 修改现有的待办事项和项目
  • 智能调度 - 支持自然语言日期和时间
  • 高级组织 - 标签、区域、标题和检查项
  • JSON操作 - 通过JSON进行复杂的批处理操作
  • 搜索与导航 - 查找并显示特定项目或列表
  • 正确的URL编码 - 正确处理特殊字符和空格

先决条件

  • macOS - 需要用于Things应用集成
  • Things 3 - 必须安装并运行Things应用
  • Node.js - 版本16或更高
  • MCP客户端 - 如Claude桌面应用或其他兼容MCP的客户端

安装

使用npx(推荐)

无需安装!直接使用:

npx things-mcp

全局安装

npm install -g things-mcp

配置

Claude桌面

将服务器添加到您的Claude桌面配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

使用npx(推荐):

{
  "mcpServers": {
    "things": {
      "command": "npx",
      "args": ["-y", "things-mcp"]
    }
  }
}

使用全局安装:

{
  "mcpServers": {
    "things": {
      "command": "things-mcp"
    }
  }
}

使用

配置完成后,您可以使用自然语言通过您的MCP客户端与Things互动。这里有一些示例:

创建待办事项

"创建一个待办事项今晚买杂货"
"添加一个待办事项'打电话给牙医',截止日期是下周五"
"创建多个待办事项:牛奶、面包、鸡蛋在我的购物项目中"

创建项目

"在我的工作区域创建一个名为'网站重新设计'的项目"
"创建一个项目'度假计划',待办事项:预订航班、预定酒店、研究活动"

更新项目

"更新我的'打电话给牙医'待办事项,使其明天到期"
"在我的网站项目中添加关于新配色方案的笔记"
"标记购买杂货的待办事项已完成"

组织

"显示我的今日列表"
"搜索所有标记为'紧急'的待办事项"
"打开过滤工作标签的将来列表"

可用命令

add-todo

创建一个新的待办事项,具有广泛的自定义选项:

  • title/titles - 单个标题或多行分隔的多个标题
  • notes - 富文本备注(最多10,000个字符)
  • when - 自然语言调度(今天、明天、晚上、具体日期)
  • deadline - 带有自然语言支持的截止日期
  • tags - 用于组织的标签数组
  • checklist-items - 待办事项内的子任务
  • list/list-id - 项目或区域分配
  • heading/heading-id - 项目中的特定标题
  • completed/canceled - 设置完成状态
  • show-quick-entry - 显示快速输入对话框
  • reveal - 导航到创建的待办事项

add-project

创建一个全新的项目,具有完整的配置:

  • title - 项目名称
  • notes - 项目描述
  • when - 调度选项
  • deadline - 项目截止日期
  • tags - 组织标签
  • area/area-id - 区域分配
  • to-dos - 在项目内创建的待办事项标题数组
  • completed/canceled - 项目状态
  • reveal - 导航到创建的项目

update

修改现有待办事项:

  • id - 待办事项ID(必需)
  • auth-token - 授权令牌(必需)
  • title - 新标题
  • notes/prepend-notes/append-notes - 备注修改
  • when - 重新安排
  • deadline - 更改截止日期
  • tags/add-tags - 标签管理
  • checklist-items - 修改检查项
  • list/heading - 移动到不同位置
  • completed/canceled - 状态更改
  • duplicate - 在更新之前创建副本

update-project

使用类似于update命令的选项修改现有项目。

show

导航到特定项目或列表:

  • id - 特定项目ID或内置列表(收件箱、今日、任何时候等)
  • query - 按名称搜索
  • filter - 按标签筛选

search

跨所有Things数据搜索:

  • query - 搜索词

json

使用JSON格式进行复杂项目结构的高级批处理操作。

version

获取Things应用和URL方案版本信息。

授权

某些操作(更新)需要来自Things的授权令牌:

  1. macOS: Things → 设置 → 通用 → 启用Things URL → 管理
  2. iOS: 设置 → 通用 → Things URL

复制您的唯一令牌,并在更新操作时使用它。

获取项目ID

要更新特定项目,您需要它们的ID:

macOS

  • 右键点击待办事项/项目 → 分享 → 复制链接
  • 右键点击侧边栏中的列表 → 分享 → 复制链接

iOS

  • 点击待办事项/项目 → 工具栏 → 分享 → 复制链接
  • 导航到列表 → 右上角 → 分享 → 复制链接

错误处理

该服务器包括全面的错误处理:

  • 无效参数由Zod验证捕获
  • Things URL失败以清晰的消息报告
  • 缺失授权令牌被检测到
  • 网络和系统错误优雅地处理

示例

基本待办事项创建

// 创建一个简单的待办事项
{
  "title": "买牛奶",
  "when": "今天",
  "tags": ["杂货"]
}

复杂项目创建

// 创建一个带有多个待办事项和组织的项目
{
  "title": "策划生日派对",
  "area": "个人",
  "when": "下周",
  "to-dos": [
    "发送邀请函",
    "订购蛋糕",
    "购买装饰品",
    "计划菜单"
  ],
  "tags": ["家庭", "庆祝"],
  "reveal": true
}

JSON批处理操作

// 带有标题和嵌套待办事项的复杂结构
{
  "data": JSON.stringify([
    {
      "type": "project",
      "attributes": {
        "title": "网站重新设计",
        "area": "工作",
        "items": [
          {
            "type": "heading",
            "attributes": { "title": "设计阶段" }
          },
          {
            "type": "to-do",
            "attributes": {
              "title": "创建线框图",
              "when": "今天"
            }
          }
        ]
      }
    }
  ])
}

故障排除

Things未打开

  • 确保已安装并更新了Things 3
  • 检查设置中是否启用了Things URL
  • 验证MCP服务器是否正确运行

授权错误

  • 从Things设置获取您的授权令牌
  • 对于更新操作,请包含auth-token参数
  • 确保令牌正确复制,没有额外的空格

连接问题

  • 重启Claude桌面或您的MCP客户端
  • 检查配置文件语法
  • 查看客户端日志中的错误

贡献

欢迎贡献!请:

  1. 分叉仓库
  2. 创建一个特性分支
  3. 提交拉取请求

许可

MIT许可 - 详情见LICENSE文件。

相关

支持

  • 🐛 错误报告:在GitHub上打开一个问题
  • 💡 功能请求:带有增强标签的问题
  • 📚 文档:查看Things URL方案文档
  • 💬 问题:在GitHub上开启讨论