使用说明
任务控制MCP服务器
任务控制MCP |任务控制自动化编排器
Claude Code的领域无关任务自动化和验证系统,支持具有自我验证功能的自主任务执行。
📋 概述
任务控制是一个专门为克劳德代码设计的模型上下文协议(MCP)服务器。它提供了一个具有内置验证循环的自动化任务框架,允许Claude:
- 自主执行任务
- 根据客观标准验证结果
- 迭代直到成功或最大尝试次数
- 为每次尝试提供详细的反馈
主要特点
- ✅ 零外部依赖:所有验证都在本地运行
- 🔒 注重隐私:没有数据离开您的机器
- ⚡ 快速:验证无网络延迟
- 🎯 域不可知:跨软件开发、DevOps、数据科学等领域工作
- 📊 自我验证:自动成功/失败检测
- 🔄 迭代的:带反馈的自动重试
🏗️ 建筑
核心组件
- 任务定义器:锁定任务参数和验证标准
- 尝试计数器:防止具有可配置限制的无限循环
- 动态反馈引擎:生成可操作的改进建议
- 验证策略:数字、EXIT_CODE和关键字验证器
- 状态管理器:跟踪任务进展和历史
工作流程
┌─────────────────────────────────────────┐
│ 1. Define Mission │
│ - Goal description │
│ - Validation strategy │
│ - Success criteria │
└─────────────────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ 2. Execution Loop │
│ ┌─────────────────────────────────┐ │
│ │ Claude executes task │ │
│ └─────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────┐ │
│ │ Submit attempt for validation │ │
│ └─────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────┐ │
│ │ System validates result │ │
│ └─────────────────────────────────┘ │
│ ↓ │
│ Pass? ─No→ Retry with feedback │
│ │ │
│ Yes │
└─────────────────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ 3. Mission Complete │
│ - Success report │
│ - Attempt history │
└─────────────────────────────────────────┘
📦 安装
先决条件
- Node.js>=18.0.0
- npm或纱线
- 克劳德代码CLI
选项1:NPM安装(推荐)
通过npm全局安装:
npm install -g mission-control-mcp
然后添加到克劳德代码中:
claude mcp add mission-control mission-control-mcp
或手动配置:
配置文件位置:
- macOS/Linux:
~/.config/claude-code/mcp.json - 视窗:
%USERPROFILE%\.claude-code\mcp.json
{
"mcpServers": {
"mission-control": {
"command": "mission-control-mcp",
"env": {
"MCP_ENABLE_PERSISTENCE": "true"
}
}
}
}
选项2:使用npx(无需安装)
claude mcp add mission-control --transport stdio -- npx -y mission-control-mcp
选项3:来源(开发)
# Clone the repository
git clone https://github.com/ufo23005/mission-control-mcp.git
cd mission-control-mcp
# Install dependencies
npm install
# Build the project
npm run build
配置克劳德代码:
配置文件位置:
- macOS/Linux:
~/.config/claude-code/mcp.json - 视窗:
%USERPROFILE%\.claude-code\mcp.json
{
"mcpServers": {
"mission-control": {
"command": "node",
"args": ["<path-to-installation>/mission-control-mcp/dist/index.js"],
"env": {
"MCP_STATE_DIR": "<path-to-installation>/mission-control-mcp/.state",
"MCP_ENABLE_PERSISTENCE": "true"
}
}
}
}
验证安装
claude mcp list
# Should show mission-control in the list with ✓ Connected status
🚀 用法
验证策略
1.数字-数字比较
适用于具有可衡量数字目标(绩效指标、覆盖率、分数)的任务。
示例:测试覆盖率
// Define mission
{
"goal": "Increase test coverage to 80%",
"strategy": "NUMERIC",
"criteria": {
"operator": ">=",
"threshold": 80.0,
"metricName": "coverage_percentage"
},
"maxAttempts": 10
}
// Submit attempt
{
"missionId": "<mission-id>",
"output": "Coverage: 82.5%",
"value": 82.5
}
运算符: >, <, >=, <=, ==, !=
2.EXIT_CODE-命令状态
用于通过命令执行成功验证的任务。
示例:Linting
// Define mission
{
"goal": "Fix all ESLint errors",
"strategy": "EXIT_CODE",
"criteria": {
"expectedCode": 0,
"command": "npm run lint"
},
"maxAttempts": 8
}
// Submit attempt
{
"missionId": "<mission-id>",
"output": "Linting complete",
"value": 0 // exit code
}
3.关键字-文本匹配
用于通过输出内容验证的任务。
示例:构建成功
// Define mission
{
"goal": "Successful production build",
"strategy": "KEYWORD",
"criteria": {
"keyword": "Build completed successfully",
"mustContain": true,
"caseSensitive": false
}
}
// Submit attempt
{
"missionId": "<mission-id>",
"output": "Build completed successfully. Output: dist/"
}
🛠️ MCP工具
define_mission
使用验证标准定义新的自动化任务。
参数:
goal(string):自然语言任务描述strategy(枚举):NUMERIC|EXIT_CODE|KEYWORDcriteria(对象):策略特定验证参数maxAttempts(数字,可选):最大重试限制(默认值:10)enableCheckpoints(布尔值,可选):启用恢复检查点checkpointFrequency(数字,可选):每N次尝试检查一次
退货: 任务ID和配置
提交尝试
提交任务执行结果以供验证。
参数:
missionId(string):任务标识符output(string):命令/进程输出value(数字|字符串,可选):提取的验证值
退货: 带有反馈和后续步骤的验证结果
get_mission_status
查询当前任务进度和历史。
参数:
missionId(string):任务标识符
退货: 状态、尝试次数和历史记录
中止任务
手动停止正在运行的任务。
参数:
missionId(string):任务标识符reason(字符串,可选):中止原因
退货: 确认和最终状态
📖 示例
示例1:修复ESLint错误
$ claude "Fix all ESLint errors. Use define_mission with EXIT_CODE strategy, then iterate until npm run lint returns 0."
克劳德将:
- 呼叫
define_mission符合EXIT_CODE标准(预期代码:0) - 分析代码并修复错误
- 跑
npm run lint - 呼叫
submit_attempt带退出代码 - 重复,直到成功或达到最大尝试次数
示例2:优化性能
$ claude "Reduce API response time below 100ms. Validate with local benchmark tests."
克劳德将:
- 用NUMERIC战略定义任务(<100)
- 进行优化
- 运行基准测试
- 提交结果
- 基于反馈进行迭代
示例3:文档合规性
$ claude "Ensure all public functions have JSDoc comments. Check with custom validator."
克劳德将:
- 使用关键字或自定义验证定义任务
- 添加缺失的文档
- 运行文档检查器
- 验证完整性
🔧 配置
状态管理
编排器在中保持状态 .state/ 目录:
.state/
├── missions/ # Active and completed missions
└── checkpoints/ # Recovery checkpoints
保留策略
- 完成的使命:30天(可配置)
- 失败的任务:90天(用于分析)
- 正在执行的任务:保留至完工
资源限制
默认限制(可在代码中配置):
- 最大尝试次数:10
- 检查点频率:每5次尝试
- 尝试超时:无(每个任务可配置)
📁 项目结构
src/
├── index.ts # MCP server entry point
├── types/ # TypeScript type definitions
│ ├── mission.ts # Mission and attempt types
│ ├── validation.ts # Validation strategy types
│ └── state.ts # State management types
├── core/ # Core components
│ ├── MissionDefiner.ts # Mission configuration
│ ├── AttemptCounter.ts # Retry management
│ └── FeedbackEngine.ts # Feedback generation
├── validators/ # Validation strategies
│ ├── BaseValidator.ts
│ ├── NumericValidator.ts
│ ├── ExitCodeValidator.ts
│ └── KeywordValidator.ts
├── state/ # State management
│ └── StateManager.ts # Mission state tracking
├── tools/ # MCP tool implementations
│ ├── defineMission.ts
│ ├── submitAttempt.ts
│ ├── getMissionStatus.ts
│ └── abortMission.ts
└── utils/ # Utilities
├── logger.ts # Logging system
└── errors.ts # Error types
🎯 用例
| 领域 | 任务 | 战略 | 成功标准 |
|---|---|---|---|
| 软件开发 | 修复棉绒错误 | EXIT_CODE | exit_code == 0 |
| 测试 | 实现80%的覆盖率 | NUMERIC | coverage >= 80 |
| 演出 | 优化加载时间 | NUMERIC | load_time < 2.0 |
| 开发运维 | 验证部署 | KEYWORD | 输出是否包含“已部署” |
| 数据科学 | 改进型号F1 | NUMERIC | f1_score >= 0.85 |
| 文档 | 完整的API文档 | KEYWORD | 找不到“TODO” |
🔒 隐私和安全
- 无外部API:所有验证都在本地运行
- 无数据传输:一切都在你的机器上
- 无需网络:完全离线工作
- 审核日志记录:完整的尝试历史记录
- 可配置的限制:防止资源枯竭
🚧 局限性
适用于:
- 可客观衡量的成果
- 可重复操作
- 自动验证
- 本地命令行工具
不适合:
- 主观质量判断
- 一次性不可逆操作
- 需要人类创造力的任务
- 实时交互流程
🤝 贡献
欢迎投稿!请确保:
- 所有TypeScript类型都已定义
- 代码遵循现有模式
- 测试通过(实施时)
- 文件已更新
📄 许可证
麻省理工学院