README
🚀 MCP 任务管理器服务器
MCP 任务管理器服务器是一款基于 Node.js 的实用工具,专注于任务数据的管理与操作。它借助一组遵循 MCP 协议的工具,提供了如创建、更新、删除任务等一系列服务,为用户带来便捷的任务管理体验。
🚀 快速开始
MCP 任务管理器服务器是一个基于 Node.js 的工具,用于管理和操作任务数据。它通过实现一组 MCP 协议定义的工具来提供服务,包括创建、更新、删除任务及相关操作。
先决条件
- Node.js (推荐使用 LTS 版本)
- npm
安装依赖
npm install
开发模式运行
npm run dev
开发模式下,服务器会自动加载代码变化(通过 nodemon),并在标准输出打印日志。默认情况下,日志文件将写入 ./data/taskmanager.db。
生产环境构建
npm run build
生产环境运行
npm start
✨ 主要特性
支持的任务操作
- 创建新任务
- 更新现有任务
- 删除任务及其子任务和依赖关系
- 读取任务列表
- 导出/导入任务数据
数据库管理
- 使用 SQLite 数据库存储任务数据,默认路径为
./data/taskmanager.db - 支持通过环境变量配置数据库路径 (
DATABASE_PATH)
日志记录
- 提供不同级别的日志输出(调试、信息、警告、错误)
- 默认日志级别为
info,可通过环境变量LOG_LEVEL修改
工具实现
- 每个任务操作都有对应的工具类和参数验证(使用 Zod 库)
📦 安装指南
安装依赖
npm install
开发模式运行
npm run dev
生产环境构建
npm run build
生产环境运行
npm start
📚 详细文档
配置
数据库路径
通过设置 DATABASE_PATH 环境变量可以修改默认的 SQLite 数据库路径。例如:
DATABASE_PATH=./mydb.db npm run dev
日志级别
通过 LOG_LEVEL 环境变量设置日志输出级别,可选值为:debug, info, warn, error。例如:
LOG_LEVEL=debug npm run dev
项目结构
MCP-TaskManager/
├── src/
│ ├── config/ # 配置管理模块
│ ├── db/ # 数据库相关代码(包含 schema.sql)
│ ├── repositories/ # 数据访问层(SQLite 操作)
│ ├── services/ # 核心业务逻辑实现
│ ├── tools/ # MCP 工具定义(Params.ts 和 Tool.ts)
│ ├── types/ # 共享的 TypeScript 接口
│ └── utils/ # 日志、错误处理等工具函数
├── dist/ # 编译后的 JavaScript 输出目录
├── docs/ # 文档和规范文件(PRD, RFC 等)
├── data/ # 默认 SQLite 数据库存储路径(自动创建)
└── tasks.md # 开发任务跟踪文件
代码风格与质量管理
代码格式化
使用 prettier 格式化代码,确保一致性和可读性。配置文件:.eslintrc.json, .prettierrc.json
静态代码检查
使用 ESLint 和 TypeScript 进行代码质量检查。在开发过程中,通过 Husky 和 lint-staged 实现自动检查。
单元测试
提供完整的单元测试用例(位于 src/test/ 目录)。可以通过以下命令运行测试:
npm test
项目目标
- 提供一个可靠的任务管理工具,支持复杂任务依赖关系和子任务结构。
- 实现 MCP 协议定义的接口,确保与其他系统的兼容性。
- 保证代码的可维护性和扩展性,便于后续功能增强。
使用场景
- 个人任务管理:用户可以通过命令行或图形界面创建、更新和删除任务。
- 团队协作工具:支持多用户同时操作(需结合身份验证模块)。
- 自动化流程:通过 API 调用集成到其他系统中,实现任务自动化。
接下来步骤
- 安装依赖并启动服务器:
npm install && npm run dev
- 查看默认日志输出或数据库文件。
- 根据需求修改配置环境变量。
更多详细信息,请参考项目文档和代码实现。
Scan to join WeChat group