返回 MCP 目录
public公开dns本地运行

uptier

UpTier是一款桌面待办事项应用,结合微软To Do风格界面与Claude AI智能优先级排序功能,通过MCP协议实现任务智能管理。

article

README

🚀 UpTier

UpTier 是一款桌面待办应用程序,它结合了简洁的 Microsoft To Do 风格界面与 Claude AI 的强大功能,可实现智能任务优先级排序。通过模型上下文协议 (MCP),Claude 能够分析你的任务,并帮助你专注于最重要的事情。

🚀 快速开始

前提条件

  • Node.js 20+(建议使用 LTS 版本)
  • pnpm 8+
  • Claude Desktop(用于 AI 功能)

安装

# 克隆仓库
git clone https://github.com/foxintheloop/uptier.git
cd uptier

# 安装 pnpm(如果尚未安装)
npm install -g pnpm

# 安装依赖项
pnpm install

# 批准原生模块(canvas、sharp、electron)的构建脚本
pnpm approve-builds

# 重建原生模块
pnpm rebuild

# 构建包
pnpm --filter @uptier/shared build
pnpm --filter @uptier/mcp-server build

运行应用程序

# 开发模式
pnpm dev:electron

# 生产构建
pnpm --filter @uptier/electron build

Claude Desktop 集成

部署适用于 Claude Desktop 的 MCP 服务器:

# 将 MCP 服务器部署到独立目录
pnpm --filter @uptier/mcp-server deploy

这会将 MCP 服务器部署到 ~/.uptier/mcp-server/ 目录,并带有自己的 node_modules,会自动针对你当前的 Node.js 版本进行编译。Claude Desktop 配置会自动更新。

⚠️ 重要提示

之所以采用独立部署,是因为 Electron 应用程序使用的是 Node.js 22(打包版),而 Claude Desktop 可能使用不同的 Node.js 版本。独立部署会针对正确的版本编译原生模块(如 better-sqlite3),从而避免冲突。

部署完成后:

  1. 重启 Claude Desktop。
  2. UpTier 工具将在 Claude 中可用。

手动配置(备用方法)

如果自动部署不起作用,可以手动将 UpTier 添加到你的 Claude Desktop 配置中:

  • Windows%APPDATA%\Claude\claude_desktop_config.json
  • macOS~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "uptier": {
      "command": "node",
      "args": ["/path/to/.uptier/mcp-server/index.js"]
    }
  }
}

✨ 主要特性

任务管理

  • 列表与任务:创建自定义列表、带有子任务的任务,并组织你的工作。
  • 智能列表:内置“今日任务”“重要任务”“计划任务”和“已完成任务”视图。
  • 标签:使用彩色标签对任务进行分类,以便轻松过滤。
  • 截止日期:设置带有通知和逾期跟踪的截止日期。
  • 拖放操作:在列表中重新排序任务。

AI 驱动功能

  • 智能优先级排序:让 Claude 分析并为你的任务排序。
  • 多种策略:艾森豪威尔矩阵、速赢策略、高影响力策略等。
  • 自动建议:获取 AI 对任务组织的建议。

组织管理

  • 目标跟踪:将任务与目标关联,并跟踪进度。
  • 优先级层级:三级系统(立即执行、尽快执行、待办事项)。
  • 优先级评分:根据工作量、影响力、紧急程度和重要性对任务进行评分。
  • 数据导出:导出数据以进行备份或分析。

多数据库支持

  • 多个配置文件:为工作、个人和项目创建单独的数据库。
  • 轻松切换:从侧边栏切换数据库配置文件。
  • 数据隔离:每个配置文件都维护自己的列表、任务和设置。

专注计时器

  • 无干扰模式:全屏计时器覆盖,帮助你保持专注。
  • 灵活的时长:预设选项(30、45、60、90 分钟)或自定义时长。
  • 任务上下文:工作时查看任务标题和备注。
  • 键盘控制:空格键暂停/恢复,Esc 键结束会话。

用户体验

  • 黑暗模式:现代的黑暗主题界面。
  • 键盘快捷键:使用 Ctrl+F(搜索)、Ctrl+N(新建任务)等快速操作。
  • 系统托盘:最小化到托盘以便快速访问。
  • 并发访问:采用 WAL 模式的 SQLite 允许应用程序和 Claude 同时工作。

📚 详细文档

架构

uptier/
├── apps/
│   ├── electron/          # 桌面应用程序(React + Electron)
│   └── mcp-server/        # 适用于 Claude Desktop 的 MCP 服务器
├── packages/
│   └── shared/            # 共享类型和数据库架构
└── pnpm-workspace.yaml

| 组件 | 描述 | |------|------| | MCP 服务器 | 通过 MCP 提供 25 种以上任务管理工具的 Node.js 服务器 | | Electron 应用 | 带有 React 用户界面的桌面应用程序 | | SQLite 数据库 | 采用 WAL 模式的共享数据库,支持并发访问 |

MCP 工具

UpTier 向 Claude 提供强大的工具来管理你的任务:

列表

| 工具 | 描述 | |------|------| | create_list | 创建新的任务列表 | | get_lists | 获取所有列表及其任务数量 | | update_list | 更新列表名称、颜色或图标 | | delete_list | 删除列表 | | reorder_lists | 更改列表位置 |

任务

| 工具 | 描述 | |------|------| | create_task | 创建带有可选属性的新任务 | | get_tasks | 获取带有过滤选项的任务 | | update_task | 更新任务属性 | | complete_task | 将任务标记为已完成 | | delete_task | 删除任务 | | bulk_create_tasks | 一次性创建多个任务 | | move_task | 将任务移动到不同的列表 |

优先级排序

| 工具 | 描述 | |------|------| | prioritize_list | 分析任务并获取优先级排序指导 | | bulk_set_priorities | 为多个任务设置优先级层级 | | get_prioritization_summary | 获取任务优先级概述 | | suggest_next_task | 获取 AI 对下一步工作的建议 |

目标

| 工具 | 描述 | |------|------| | create_goal | 创建目标 | | get_goals | 获取所有目标及其进度 | | update_goal | 更新目标属性 | | link_tasks_to_goal | 将任务与目标关联 | | get_goal_progress | 获取目标的完成统计信息 |

子任务与标签

| 工具 | 描述 | |------|------| | add_subtask | 为任务添加子任务 | | update_subtask | 更新子任务属性 | | create_tag | 创建新标签 | | get_tags | 获取所有标签 | | add_tag_to_task | 为任务添加标签 |

优先级排序策略

当要求 Claude 为你的任务排序时,你可以请求不同的策略:

| 策略 | 适用场景 | |------|------| | 平衡策略 | 一般用途 - 平等权衡所有因素 | | 紧急优先策略 | 以截止日期为驱动的工作 | | 速赢策略 | 通过低工作量的胜利建立动力 | | 高影响力策略 | 无论工作量如何,追求最大结果 | | 艾森豪威尔策略 | 经典的紧急/重要决策矩阵 |

优先级层级

任务分为三个层级:

  • 一级(立即执行):高影响力、紧急或阻碍其他工作的任务。
  • 二级(尽快执行):重要但不紧急的任务。
  • 三级(待办事项):优先级较低,未来可能执行的任务。

数据存储

你的数据存储在本地:

  • Windows%APPDATA%\.uptier\tasks.db
  • macOS/Linux~/.uptier/tasks.db

其他数据库配置文件存储在同一目录下,使用自定义名称。

数据库使用采用 WAL 模式的 SQLite,允许 Electron 应用程序和 MCP 服务器同时访问而不冲突。

日志

应用程序日志存储在以下位置:

  • Windows%APPDATA%\UpTier\logs\
  • macOS~/Library/Application Support/UpTier/logs/
  • Linux~/.config/UpTier/logs/

键盘快捷键

| 快捷键 | 操作 | |------|------| | Ctrl+N | 创建新任务 | | Ctrl+F | 聚焦搜索框 | | / | 导航任务 | | Space | 切换任务完成状态 | | Delete | 删除选定任务 | | Escape | 关闭详情面板 |

专注计时器快捷键

| 快捷键 | 操作 | |------|------| | Space | 暂停/恢复计时器 | | Escape | 结束专注会话 |

路线图

  • [x] 智能列表(今日任务、重要任务、计划任务、已完成任务)
  • [x] 黑暗模式
  • [x] 键盘快捷键
  • [x] 标签
  • [x] 截止日期通知
  • [x] 多个数据库配置文件
  • [x] 数据导出
  • [x] 列表重命名/删除
  • [x] 专注计时器
  • [ ] 重复任务
  • [ ] 自定义智能列表过滤器
  • [ ] 日历集成
  • [ ] 任务模板
  • [ ] 移动伴侣应用程序

故障排除

"Electron uninstall" 错误

如果你在运行 pnpm dev:electron 时看到 Error: Electron uninstall,说明 Electron 二进制文件未下载。请运行:

node node_modules/electron/install.js

MCP 服务器的原生模块错误

如果 Claude Desktop 显示关于 better-sqlite3NODE_MODULE_VERSION 不匹配的错误,请使用独立部署:

pnpm --filter @uptier/mcp-server deploy

这会在 ~/.uptier/mcp-server/ 目录创建一个单独的 MCP 服务器安装,其中的原生模块会针对你当前的 Node.js 版本进行编译,避免与 Electron 应用程序冲突。

如果你仍然遇到问题,请确保你使用的 Node.js 版本与 Claude Desktop 相同(通常是 Node.js 23)。

构建脚本警告

如果你在 pnpm install 期间看到关于“忽略构建脚本”的警告,请运行:

pnpm approve-builds

然后选择需要运行构建脚本的包(canvas、sharp、electron)。

贡献

欢迎贡献代码!以下是开始的步骤:

  1. 分叉仓库。
  2. 创建功能分支 (git checkout -b feature/amazing-feature)。
  3. 进行更改。
  4. 运行应用程序进行测试 (pnpm dev:electron)。
  5. 提交更改 (git commit -m 'Add amazing feature')。
  6. 推送到分支 (git push origin feature/amazing-feature)。
  7. 打开拉取请求。

寻求帮助:macOS 和 Linux 测试

UpTier 目前仅在 Windows 上进行了测试。如果你使用的是 macOS 或 Linux,我们非常希望得到你的帮助来测试并报告任何特定于平台的问题!

📄 许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE


使用 ElectronReactClaude 构建

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端