README
🚀 GitHub 项目管理 MCP 服务器
该项目实现了 Model Context Protocol (MCP) 服务器,借助标准化工具和资源来提供 GitHub Projects 功能。LLM 客户端可通过 MCP 接口对 GitHub 项目进行编程式管理,极大提升了项目管理的便捷性和效率。
🚀 快速开始
此服务器实现了 Model Context Protocol,旨在向 LLM 客户端暴露 GitHub Projects 功能。它提供了一系列工具,可通过 GitHub 的 GraphQL API 管理项目、里程碑、冲刺和指标,同时依据 MCP 规范维护状态并处理错误。
启动服务器,对于使用 npm 的用户:
npm start
对于使用 Yarn 的用户:
yarn start
示例命令:获取用户信息
curl http://localhost:3000/api/users
✨ 主要特性
-
项目管理
- 创建和管理 GitHub Projects (v2)
- 处理项目设置和配置
- 管理项目可见性和访问权限
-
项目资源
- 问题和里程碑的管理
- 冲刺规划和跟踪
- 自定义字段和视图
- 资源版本控制和锁定
-
MCP 实现
- 完整的 MCP 规范合规性
- 标准化工具定义与 Zod 验证
- 资源状态管理
- 进度式响应处理
- 全面错误处理
-
GitHub 集成
- 带分页支持的 GraphQL API 集成
- 智能访问令牌
- 带自动重试和断路器的稳健 HTTP 客户端
- 资源速率限制和排队
📦 安装指南
安装依赖项
使用包管理工具安装项目依赖,对于 npm 用户:
npm install
对于 Yarn 用户:
yarn install
配置
创建 config.json 文件并添加以下内容:
{
"github": {
"clientId": "YOUR_GITHUB_CLIENT_ID",
"clientSecret": "YOUR_GITHUB_CLIENT_SECRET"
}
}
🔧 技术细节
- 分层架构:拥有清晰的分层结构,便于系统的维护和扩展。
- 模块化设计:将核心功能分解为独立模块,提高了代码的复用性。
- 依赖注入:通过依赖注入实现松耦合组件。
📚 详细文档
当前状态分析
已实现的功能
| 功能 | 描述 | |------|------| | 用户管理 | 创建、读取、更新和删除用户 | | 项目管理 | 管理 GitHub Projects (v2) | | 品格管理 | 管理问题和里程碑 |
待办事项
| 功能 | 描述 | 状态 | |------|------|------| | 角色与权限控制 | 实现细粒度访问控制 | 进行中 | | 审计日志 | 记录操作日志 | 未开始 | | API 文档生成 | 自动生成 API 文档 | 未开始 |
文档链接
交互式文档
在浏览器中打开 API 探索器 进行交互式 API 探索。
开发相关
测试
# 单元测试
npm test
# 集成测试
npm run test:integration
# 端到端测试
npm run test:e2e
代码质量
# 格式化代码
npm run lint
# 类型检查
npm run type-check
# 编码格式化
npm run format
贡献指南
我们欢迎对 GitHub Project Manager MCP Server 的贡献!请参考我们的 贡献指南 了解详细信息:
微信扫一扫