敏捷MCP
基于模型上下文协议(MCP)构建的全面敏捷积压管理系统,具有项目隔离、多代理支持和交互式可视化的特点
  
概述
Agile MCP提供了一个完整的敏捷积压管理解决方案,将人工智能代理和人类团队联系起来。它由三个集成组件组成:
- MCP服务器:通过AI代理的模型上下文协议(Claude等)公开敏捷积压工具
- Web用户界面:具有依赖关系图和层次树的交互式人类仪表板
- 共享数据库:具有项目隔离和安全审计功能的SQLite数据库
主要特点
🔒 项目隔离
- 基于标识符的安全:每个项目都有一个唯一的标识符
- 多项目支持:在单个数据库中管理多个存储库
- 访问控制:AI代理只能访问其注册项目中的项目
- 安全审计:记录所有访问尝试以符合要求
🤖 MCP服务器(AI代理接口)
- 史诗、故事和任务管理:完整的CRUD操作
- Sprint和迭代计划:创建冲刺、管理容量、跟踪速度
- 烧毁追踪:每日快照和燃尽图数据
- 依赖项跟踪:使用循环依赖预防创建依赖关系
- 冲突检测:跟踪修改以检测并发编辑
- 导出功能:导出积压数据以供分析
- MCP资源:积压概述和依赖关系的只读视图
🌐 Web UI(人机界面)
- 项目管理:注册并在项目之间切换
- 完整的CRUD操作:创建、编辑和删除史诗、故事和任务
- Sprint管理:创建和管理冲刺,添加/删除故事
- Sprint董事会:带有拖放功能的看板风格板(5个状态列)
- 燃尽图:用理想线与实际线进行视觉燃尽跟踪
- 速度报告:冲刺计划的历史速度计算
- 待办列表视图:具有sprint和史诗过滤功能的可过滤列表
- 依赖图:交互式React Flow可视化显示故事依赖关系
- 层次结构树:Epic的D3驱动树视图→ 故事→ 任务关系
- 响应式设计:具有自适应布局的移动友好界面
💾 数据库和安全
- 带WAL模式的SQLite:快速、可靠的本地存储
- 外键约束:级联删除保持数据完整性
- 自动迁移:自动应用数据库架构更新
- 安全日志:对未经授权的访问尝试进行审计跟踪
- 冲突检测:跟踪并发修改
建筑
agile-mcp/
├── mcp-server/ # MCP server for AI agent access
│ ├── src/
│ │ ├── tools/ # Tool handlers (project, epic, story, task, dependency)
│ │ ├── resources/ # MCP resource handlers
│ │ └── index.ts # Server entry point
│ └── package.json
├── web-ui/ # React visualization dashboard
│ ├── server/ # Express REST API server (port 3004)
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── utils/ # API client
│ │ └── types/ # TypeScript types
│ └── package.json
├── shared/ # Shared database schema & types
│ └── src/
│ ├── database.ts # SQLite database class
│ └── types.ts # Shared TypeScript types
└── agile-backlog.db # SQLite database file快速开始
先决条件
- Node.js 18+
- npm 9+
安装
# Install dependencies for all workspaces
npm install
# Build shared package
cd shared && npm run build && cd ..
# Build MCP server
cd mcp-server && npm run build && cd ..用法
用于AI代理(MCP服务器)
添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"agile-mcp": {
"command": "node",
"args": ["/absolute/path/to/agile-mcp/mcp-server/dist/index.js"]
}
}
}然后在克劳德:
Register this project: "my-app"
Create an epic for user authentication
Add a story for login functionality to that epic面向人类(Web UI)
cd web-ui
npm run dev访问http://localhost:3004访问:
- 待办事项列表 (
/)-可过滤的故事列表,具有CRUD操作和sprint过滤功能 - Sprint董事会 (
/project/:id/sprint/:sprintId)-用于主动冲刺的看板 - 燃尽图 (
/project/:id/sprint/:sprintId/burndown)Sprint燃耗可视化 - 依赖图 (
/project/:id/dag)-交互式依赖关系可视化 - 层次结构树 (
/project/:id/tree)-史诗→ 故事→ 任务层次结构
核心概念
项目
每个项目代表一个代码库/存储库,有自己独立的待办事项列表:
- 唯一标识符(例如。,
"frontend-app","api-service") - 所有史诗、故事和任务都属于一个项目
- 人工智能代理必须在创建待办事项之前注册项目
史诗、故事和任务
标准敏捷层次结构:
- 史诗:高级别特色领域或倡议
- 故事:具有优先级、点数和状态的用户故事
- 任务:可操作的故事子项
冲刺和迭代
带产能规划的限时工作周期:
- Sprint生命周期:规划→ 活跃的→ 完成
- 故事分配:添加/删除冲刺中的故事
- 容量跟踪:监控已提交与已完成的分数
- 燃尽图:跟踪一段时间内的剩余工作
- 速度度量:计算历史团队速度
- 每日快照:记录燃耗可视化的进度
依赖项
故事到故事的关系:
- 块 / blocked_by 依赖关系类型
- 自动循环依赖检测
- 在依赖关系图视图中可视化
状态工作流
所有项目都遵循此工作流程:
todo → in_progress → review → done
↓ ↑
blocked ────────┘技术栈
| 层 | 技术 |
|---|---|
| MCP协议 | @modelcontextprotocol/sdk |
| 数据库 | SQLite(更好的平方3) |
| 后端API | Express.js、TypeScript |
| 前端 | React 18、TypeScript、Vite |
| 图形可视化 | 反应流(@xyflow/React) |
| 树可视化 | D3.js |
| 样式 | 顺风CSS |
| 图标 | Lucide反应 |
文档
- QUICKSTART.md -5分钟后开始
- 建筑.md -技术架构和设计
- MCP_SERVER.md -AI代理的完整MCP工具参考
- API_REFERENCE.md -面向开发人员的REST API文档
- 部署.md -生产部署指南
示例工作流
AI代理工作流
// 1. Register project
Tool: register_project
{
"project_identifier": "my-app",
"name": "My Application",
"description": "Main application project"
}
// 2. Create epic
Tool: create_epic
{
"project_identifier": "my-app",
"agent_identifier": "claude",
"title": "User Authentication",
"description": "Implement secure user authentication"
}
// 3. Create story
Tool: create_story
{
"project_identifier": "my-app",
"agent_identifier": "claude",
"epic_id": 1,
"title": "Login page",
"description": "Create login UI with email and password",
"priority": "high",
"points": 5
}
// 4. Add dependency
Tool: add_dependency
{
"project_identifier": "my-app",
"agent_identifier": "claude",
"story_id": 2,
"depends_on_story_id": 1,
"dependency_type": "blocks"
}Web UI工作流
- 打开http://localhost:3004
- 从下拉列表中选择项目(或创建新项目)
- 点击“新建史诗”创建史诗
- 点击“新建故事”创建故事
- 点击“新建Sprint”以创建迭代计划的Sprint
- 从故事详情页面向冲刺添加故事
- 点击“活动冲刺”按钮查看活动冲刺板
- 使用燃尽图跟踪进度
- 使用编辑/删除图标进行修改
- 切换到“依赖关系图”以可视化关系
- 切换到“层次结构树”以查看完整的层次结构
安全功能
项目隔离
- 每个项目都有一个唯一的标识符
- 所有MCP工具都验证项目访问权限
- 跨项目访问尝试被阻止并记录
审计跟踪
- 安全日志跟踪所有访问违规行为
- 事件类型:
unauthorized_access,project_violation,conflict_detected - 可通过以下方式访问
/api/security-logs端点
冲突检测
- 轨迹
last_modified_by对于所有实体 - 检测并发修改
- 当多个代理编辑同一项目时发出警告
发展
构建所有包
npm run build观看模式
# MCP server
cd mcp-server && npm run dev
# Web UI (runs both API server and Vite dev server)
cd web-ui && npm run dev数据库位置
SQLite数据库创建于 ./agile-backlog.db 在项目根中。
贡献
欢迎投稿!拜托:
- 复刻仓库
- 创建要素分支
- 进行更改
- 提交拉取请求
许可证
MIT许可证-有关详细信息,请参阅许可证文件
支持
- 问题:通过GitHub问题报告错误或请求功能
- 文档:有关详细指南,请参阅docs/目录
- MCP-SDK: https://github.com/anthropics/mcp
______________________________________________________________________
内置于❤️ 在敏捷开发中实现无缝的人工智能与人类协作
