MCP任务管理器
](https://smithery.ai/server/@chriscarrollsmith/taskqueue-mcp)
MCP任务管理器()是用于AI任务管理的模型上下文协议(MCP)服务器。该工具帮助人工智能助手以结构化的方式处理多步骤任务,并提供可选的用户批准检查点。
特性
- 多步骤任务规划
- 进度跟踪
- 用户对已完成任务的批准
- 项目竣工审批
- 任务详细信息可视化
- 任务状态管理
- 增强的CLI用于任务检查和管理
基本设置
通常,您将在Claude Desktop、Cursor或其他MCP客户端中设置工具配置,如下所示:
{
"tools": {
"taskqueue": {
"command": "npx",
"args": ["-y", "taskqueue-mcp"]
}
}
}要使用CLI实用程序,您可以全局安装该软件包,然后使用以下命令:
npx taskqueue --help这将显示可用的命令和选项。
高级配置
任务管理器支持多个LLM提供程序来生成项目计划。您可以根据要使用的提供程序配置以下一个或多个环境变量:
OPENAI_API_KEY:使用OpenAI模型(如GPT-4)需要GOOGLE_GENERATIVE_AI_API_KEY:使用谷歌的Gemini型号需要DEEPSEEK_API_KEY:需要使用Deepseek模型
要使用CLI生成项目计划,请在shell中设置以下环境变量:
export OPENAI_API_KEY="your-api-key"
export GOOGLE_GENERATIVE_AI_API_KEY="your-api-key"
export DEEPSEEK_API_KEY="your-api-key"或者,您可以将它们包含在MCP客户端配置中,以使用MCP工具调用生成项目计划:
{
"tools": {
"taskqueue": {
"command": "npx",
"args": ["-y", "taskqueue-mcp"],
"env": {
"OPENAI_API_KEY": "your-api-key",
"GOOGLE_GENERATIVE_AI_API_KEY": "your-api-key",
"DEEPSEEK_API_KEY": "your-api-key"
}
}
}
}可用的MCP工具
TaskManager现在使用直接工具界面,为每个操作提供特定的专用工具:
项目管理工具
list_projects:列出系统中的所有项目read_project:获取特定项目的详细信息create_project:使用初始任务创建新项目delete_project:删除项目add_tasks_to_project:向现有项目添加新任务finalize_project:在所有任务完成后完成项目
任务管理工具
list_tasks:列出特定项目的所有任务read_task:获取特定任务的详细信息create_task:在项目中创建新任务update_task:修改任务的属性(标题、描述、状态)delete_task:从项目中删除任务approve_task:批准已完成的任务get_next_task:获取项目中的下一个待处理任务mark_task_done:将任务标记为已完成,并附上详细信息
任务状态和工作流
任务有一个状态字段,可以是以下字段之一:
not started:任务尚未启动in progress:任务目前正在进行中done:任务已完成(需要completedDetails)
状态转换规则
系统强制执行以下任务状态转换规则:
- 任务遵循特定的工作流程,并定义了有效的转换:
- 自 not started:只能移动到 in progress - 自 in progress:可以移动到其中之一 done 或返回 not started - 自 done:可以移回 in progress 如果需要额外的工作
- 当任务标记为“完成”时
completedDetails必须提供字段以记录已完成的内容 - 已批准的任务不能修改
- 只有当所有任务都已完成并获得批准时,项目才能获得批准
这些规则有助于保持任务进度的完整性,并确保对已完成的工作进行适当的记录。
使用工作流程
使用此任务管理器的LLM的典型工作流程是:
create_project:以初始任务启动项目get_next_task:获取第一个待处理的任务- 完成任务
mark_task_done:将任务标记为已完成,并附上详细信息- 等待批准(用户必须致电
approve_task通过CLI) get_next_task:获取下一个待处理的任务- 重复步骤3-6,直到所有任务都完成
finalize_project:完成项目(需要用户批准)
CLI命令
要使用CLI,您需要全局安装该软件包:
npm install -g taskqueue-mcp或者,您可以使用以下命令运行CLI npx 使用 --package=taskqueue-mcp 旗帜告诉 npx 这是什么包裹。
npx --package=taskqueue-mcp taskqueue --help任务审批
默认情况下,当AI代理标记为“完成”时,所有任务和项目都将自动批准。要要求手动人工任务审批,请设置 autoApprove 向 false 创建项目时。
任务审批仅由人类用户通过CLI控制:
npx taskqueue approve-task --
选项:
-f, --force:即使任务未标记为已完成,也强制批准
注意:任务必须由AI代理标记为“已完成”,并包含已完成的详细信息,然后才能获得批准(除非使用--force)。
列出任务和项目
CLI提供了一个命令来列出所有项目和任务:
npx taskqueue list-tasks要查看特定项目的详细信息,请执行以下操作:
npx taskqueue list-tasks -- -p
此命令显示有关系统中所有项目或特定项目的信息,包括:
- 项目ID和初始提示
- 完成状态
- 任务详细信息(标题、描述、状态、批准)
- 进度指标(已批准/已完成/总任务)
数据模式和存储
文件位置
任务管理器将数据存储在JSON文件中,该文件必须可供服务器和CLI访问。
默认平台特定位置为:
- Linux:
~/.local/share/taskqueue-mcp/tasks.json - macOS:
~/Library/Application Support/taskqueue-mcp/tasks.json - 视窗:
%APPDATA%\taskqueue-mcp\tasks.json
不建议使用自定义文件路径存储任务数据,因为您必须记住为MCP服务器和CLI设置相同的路径,否则它们将无法相互协调。但如果你确实想使用自定义路径,你可以设置 TASK_MANAGER_FILE_PATH MCP客户端配置中的环境变量:
{
"tools": {
"taskqueue": {
"command": "npx",
"args": ["-y", "taskqueue-mcp"],
"env": {
"TASK_MANAGER_FILE_PATH": "/path/to/tasks.json"
}
}
}
}然后,在运行CLI之前,您应该在shell中导出相同的路径:
export TASK_MANAGER_FILE_PATH="/path/to/tasks.json"数据模式
JSON文件使用以下结构:
TaskManagerFile
├── projects: Project[]
├── projectId: string # Format: "proj-{number}"
├── initialPrompt: string # Original user request text
├── projectPlan: string # Additional project details
├── completed: boolean # Project completion status
├── autoApprove: boolean # Set `false` to require manual user approval
└── tasks: Task[] # Array of tasks
├── id: string # Format: "task-{number}"
├── title: string # Short task title
├── description: string # Detailed task description
├── status: string # Task status: "not started", "in progress", or "done"
├── approved: boolean # Task approval status
├── completedDetails: string # Completion information (required when status is "done")
├── toolRecommendations: string # Suggested tools that might be helpful for this task
└── ruleRecommendations: string # Suggested rules/guidelines to follow for this task许可证
麻省理工学院

