返回市场
MCP-GitHub项目管理器

MCP-GitHub项目管理器

作者:kunwarVivek74 星标更新:2025-11-24

项目介绍

MCP GitHub Project Manager

一个全面的模型上下文协议(MCP)服务器,提供先进的GitHub项目管理能力,包括AI驱动的任务管理完整的可追溯性。将您的项目想法转化为可执行任务,并从商业需求到实现进行全程跟踪。

npm 版本 许可证: MIT Node.js 版本

概述

此服务器实现了模型上下文协议,以提供具有先进AI能力的全面GitHub项目管理。除了传统的项目管理之外,它还通过GitHub的GraphQL API提供了AI驱动的任务生成、需求可追溯性和智能项目规划,同时根据MCP规范维护状态并处理错误。

🚀 什么让它与众不同

  • AI驱动: 使用多个AI提供商将项目想法转换为全面的产品需求文档(PRD)和可执行任务
  • 完整可追溯性: 从商业需求→功能→用例→任务的全程跟踪
  • 智能分析: AI驱动的复杂性分析、工作量估算和任务推荐
  • 专业标准: 符合IEEE 830标准的需求文档以及企业级变更管理

目录

快速开始

使用NPM

# 全局安装包
npm install -g mcp-github-project-manager

# 设置环境变量
export GITHUB_TOKEN="your_github_token"
export GITHUB_OWNER="your_github_username_or_organization"
export GITHUB_REPO="your_repository_name"

# 运行MCP服务器
mcp-github-project-manager

使用Docker

# 构建Docker镜像
docker build -t mcp-github-project-manager .

# 使用环境变量运行
docker run -it \
  -e GITHUB_TOKEN=your_github_token \
  -e GITHUB_OWNER=your_github_username_or_organization \
  -e GITHUB_REPO=your_repository_name \
  mcp-github-project-manager

有关更多Docker使用详情,请参阅DOCKER.md

关键特性

🤖 AI驱动的任务管理

  • PRD生成 (generate_prd): 将项目想法转换为全面的产品需求文档
  • 智能任务分解 (parse_prd): 使用AI解析PRD为可执行开发任务
  • 智能功能添加 (add_feature): 添加新功能并自动进行影响分析和任务生成
  • 任务复杂性分析 (analyze_task_complexity): 详细的AI任务复杂性分析、工作量估算和风险评估
  • 下一个任务推荐 (get_next_task): AI驱动的最佳任务优先级推荐
  • 任务扩展 (expand_task): 自动将复杂任务分解为可管理的子任务
  • PRD增强 (enhance_prd): 使用AI驱动的差距分析和改进来提高现有PRD

🎯 增强的任务上下文生成

  • 基于可追溯性的上下文 (默认): 不依赖AI的丰富上下文
  • AI增强的上下文 (可选): 使用AI生成的全面业务、技术和实施上下文
  • 可配置的上下文级别: 在最小、标准和完全上下文深度之间选择
  • 业务上下文: 提取业务目标、用户影响和成功指标
  • 技术上下文: 分析技术约束、架构决策和集成点
  • 实施指导: AI生成的逐步实施建议
  • 上下文引用: 链接到相关的PRD部分、功能和技术规范
  • 增强的验收标准: 详细的、可测试的标准及验证方法
  • 优雅降级: 即使没有AI密钥也能完美工作,回退到基于可追溯性的上下文

🔗 完整的需求可追溯性

  • 端到端跟踪 (create_traceability_matrix): 从PRD商业需求→功能→用例→任务的全程可追溯性
  • 双向链接: 完整的双向可追溯性及影响分析
  • 用例管理: 专业角色-目标-场景用例生成和跟踪
  • 覆盖率分析: 全面的覆盖率指标及差距识别
  • 孤立任务检测: 识别没有需求链接的任务
  • 变更影响分析: 跟踪需求变化及其对各级的影响

📊 多提供商AI支持

  • Anthropic Claude: 复杂推理的主要AI提供商
  • OpenAI GPT: 具有回退支持的替代提供商
  • Google Gemini: 额外的AI能力
  • Perplexity: 研究和分析任务
  • 自动回退: 在提供商之间无缝切换

🏗️ 核心项目管理

  • 项目管理: 创建和管理GitHub项目(v2)
  • 问题和里程碑: 具有高级过滤功能的全CRUD操作
  • 冲刺计划: 使用AI辅助计划和管理开发冲刺
  • 自定义字段和视图: 创建不同的视图(看板、表格、时间线、路线图)
  • 资源版本控制: 智能缓存和乐观锁定

⚡ 高级功能

  • MCP实现: 符合Zod验证的完整MCP规范
  • GitHub集成: 具有智能速率限制的GraphQL API集成
  • 实时同步: 与GitHub的双向同步
  • Webhook集成: 通过GitHub webhook实现实时更新
  • 进度跟踪: 全面的指标和进度报告
  • 事件系统: 跟踪和重放项目事件

安装

方案1: 从npm安装(推荐)

# 全局安装包
npm install -g mcp-github-project-manager

# 或者安装在项目中
npm install mcp-github-project-manager

方案2: 从源码安装

# 克隆仓库
git clone https://github.com/kunwarVivek/mcp-github-project-manager.git
cd mcp-github-project-manager

# 安装依赖
npm install
# 或者
pnpm install

# 构建项目
npm run build

设置环境变量

# 复制示例环境文件
cp .env.example .env

# 编辑.env文件,填写您的GitHub令牌和其他细节

配置

必需的环境变量

GitHub配置

GITHUB_TOKEN=your_github_token
GITHUB_OWNER=repository_owner
GITHUB_REPO=repository_name

GitHub令牌需要以下权限:

  • repo (完整仓库访问)
  • project (项目访问)
  • write:org (组织访问)

AI提供商配置

至少需要一个AI提供商用于AI驱动的功能:

# 主要AI提供商(至少需要一个)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
OPENAI_API_KEY=your_openai_api_key_here
GOOGLE_API_KEY=your_google_api_key_here
PERPLEXITY_API_KEY=your_perplexity_api_key_here

# AI模型配置(可选 - 如果未指定则使用默认值)
AI_MAIN_MODEL=claude-3-5-sonnet-20241022
AI_RESEARCH_MODEL=perplexity-llama-3.1-sonar-large-128k-online
AI_FALLBACK_MODEL=gpt-4o
AI_PRD_MODEL=claude-3-5-sonnet- 20241022

# AI任务生成配置(可选)
MAX_TASKS_PER_PRD=50
DEFAULT_COMPLEXITY_THRESHOLD=7
MAX_SUBTASK_DEPTH=3
AUTO_DEPENDENCY_DETECTION=true
AUTO_EFFORT_ESTIMATION=true

# 增强任务上下文生成配置(可选)
ENHANCED_TASK_GENERATION=true
AUTO_CREATE_TRACEABILITY=true
AUTO_GENERATE_USE_CASES=true
AUTO_CREATE_LIFECYCLE=true
ENHANCED_CONTEXT_LEVEL=standard
INCLUDE_BUSINESS_CONTEXT=false
INCLUDE_TECHNICAL_CONTEXT=false
INCLUDE_IMPLEMENTATION_GUIDANCE=false

AI提供商设置

Anthropic Claude

  1. Anthropic控制台注册
  2. 创建API密钥
  3. 在环境中设置ANTHROPIC_API_KEY

OpenAI

  1. OpenAI平台注册
  2. 创建API密钥
  3. 在环境中设置OPENAI_API_KEY

Google Gemini

  1. Google AI工作室注册
  2. 创建API密钥
  3. 在环境中设置GOOGLE_API_KEY

Perplexity

  1. Perplexity API注册
  2. 创建API密钥
  3. 在环境中设置PERPLEXITY_API_KEY

使用

作为命令行工具

如果全局安装:

# 使用stdio传输启动MCP服务器
mcp-github-project-manager

# 使用环境变量启动
GITHUB_TOKEN=your_token mcp-github-project-manager

# 使用命令行参数启动
mcp-github-project-manager --token=your_token --owner=your_username --repo=your_repo

# 使用特定的.env文件
mcp-github-project-manager --env-file=.env.production

# 显示详细输出
mcp-github-project-manager --verbose

# 显示帮助信息
mcp-github-project-manager --help

从源码运行(使用TypeScript)

如果您正在开发或从源码运行:

# 直接使用ts-node运行
node --loader ts-node/esm src/index.ts

# 使用命令行参数运行
node --loader ts-node/esm src/index.ts --token=your_token --owner=your_username --repo=your_repo

# 使用npm dev脚本(监视更改)
npm run dev

# 显示帮助信息
node --loader ts-node/esm src/index.ts --help

命令行选项

选项短选项描述
--token <token>-tGitHub个人访问令牌
--owner <owner>-oGitHub仓库拥有者(用户名或组织)
--repo <repo>-rGitHub仓库名称
--env-file <path>-e.env文件路径(默认:项目根目录下的.env)
--verbose-v启用详细日志
--help-h显示帮助信息
--version显示版本信息

命令行参数优先于环境变量。

作为Node.js模块

import { Server } from "mcp-github-project-manager";

// 创建并启动MCP服务器实例
const server = new Server({
  transport: "stdio", // 或 "http" 用于HTTP服务器
  config: {
    githubToken: process.env.GITHUB_TOKEN,
    githubOwner: process.env.GITHUB_OWNER,
    githubRepo: process.env.GITHUB_REPO
  }
});

server.start();

与MCP客户端集成

// 示例使用MCP客户端库
import { McpClient } from "@modelcontextprotocol/client";
import { spawn } from "child_process";

// 创建一个子进程运行MCP服务器
const serverProcess = spawn("mcp-github-project-manager", [], {
  env: { ...process.env, GITHUB_TOKEN: "your_token" }
});

// 将MCP客户端连接到服务器
const client = new McpClient({
  transport: {
    type: "process",
    process: serverProcess
  }
});

// 调用MCP工具
const result = await client.callTool("create_project", {
  title: "My Project",
  description: "一个新的GitHub项目"
});

有关更多示例,请参阅用户指南示例/目录。

AI工具使用示例

完整项目工作流程

# 1. 从项目想法生成PRD
generate_prd({
  "projectIdea": "具有实时协作功能的AI驱动的任务管理系统",
  "projectName": "TaskAI Pro",
  "author": "product-team",
  "complexity": "高",
  "timeline": "6个月",
  "includeResearch": true
})

# 2. 解析PRD并生成带有可追溯性的任务
parse_prd({
  "prdContent": "<生成的PRD内容>",
  "maxTasks": 30,
  "createTraceabilityMatrix": true,
  "includeUseCases": true,
  "projectId": "task-ai-pro"
})

# 3. 获取下一个任务推荐
get_next_task({
  "sprintCapacity": 40,
  "teamSkills": ["react", "node.js", "typescript"],
  "maxComplexity": 7,
  "includeAnalysis": true
})

# 4. 分析复杂任务
analyze_task_complexity({
  "taskTitle": "实现实时协作",
  "taskDescription": "构建具有冲突解决功能的WebSocket实时协作",
  "teamExperience": "混合",
  "includeBreakdown": true,
  "includeRisks": true
})

# 5. 分解复杂任务
expand_task({
  "taskTitle": "构建分析仪表盘",
  "taskDescription": "创建具有AI洞察的综合分析仪表盘",
  "currentComplexity": 8,
  "targetComplexity": 3,
  "includeEstimates": true,
  "includeDependencies": true
})

功能添加工作流程

# 添加具有完整生命周期的新功能
add_feature({
  "featureIdea": "高级分析仪表盘",
  "description": "具有自定义图表和AI驱动洞察的实时分析",
  "requestedBy": "产品经理",
  "businessJustification": "增加用户参与度并提供行动指南",
  "targetUsers": ["项目经理", "团队领导", "高管"],
  "autoApprove": true,
  "expandToTasks": true,
  "createLifecycle": true
})

# 这会自动创建:
# ✅ 商业需求分析
# ✅ 具有角色-目标-场景结构的用例
# ✅ 带有完整可追溯性链接的任务
# ✅ 所有任务的生命周期跟踪

需求可追溯性

# 创建全面的可追溯性矩阵
create_traceability_matrix({
  "projectId": "task-ai-pro",
  "prdContent": "<PRD内容>",
  "features": [...],
  "tasks": [...],
  "validateCompleteness": true
})

# 输出包括:
# ✅ 商业需求→功能→用例→任务
# ✅ 双向可追溯性链接
# ✅ 覆盖率分析及差距识别
# ✅ 孤立任务检测
# ✅ 未实现需求跟踪

增强的任务上下文生成

# 默认:基于可追溯性的上下文(快速,无需AI)
parse_prd({
  "prdContent": "<PRD内容>",
  "enhancedGeneration": true,
  "contextLevel": "standard"
})

# 增强:AI驱动的全面上下文
parse_prd({
  "prdContent": "<PRD内容>",
  "enhancedGeneration": true,
  "contextLevel": "full",
  "includeBusinessContext": true,
  "includeTechnicalContext": true,
  "includeImplementationGuidance": true
})

# 性能优化:最小上下文以提高速度
parse_prd({
  "prdContent": "<PRD内容>",
  "enhancedGeneration": true,
  "contextLevel": "minimal",
  "includeBusinessContext": false,
  "includeTechnicalContext": false,
  "includeImplementationGuidance": false
})

上下文生成级别:

  • 最小: 仅基本可追溯性上下文(最快)
  • 标准: 可追溯性+基本业务上下文(默认)
  • 完全: 完整的AI增强上下文,包括实施指导

生成的任务上下文包括:

  • 业务上下文: 为什么这个任务重要,用户影响,成功指标
  • 功能上下文: 父功能信息,用户故事,业务价值
  • 技术上下文: 约束,架构决策,集成点
  • 实施指导: 步骤建议,最佳实践,陷阱
  • 增强的验收标准: 详细的验证方法和优先级
  • 上下文引用: 链接到相关的PRD部分和技术规范

🧪 测试增强的上下文生成

增强的上下文生成功能包括全面的测试覆盖:

测试文件创建:

  • src/__tests__/TaskContextGenerationService.test.ts - 核心上下文生成服务测试
  • src/__tests__/TaskGenerationService.enhanced.test.ts - 增强的任务生成集成测试
  • src/__tests__/ParsePRDTool.enhanced.test.ts - 工具级别的上下文生成测试

测试覆盖:

  • **基于可