
GitHub Code Review MCP

2025.04.23
0
Python代码审查AI辅助开发开发效率
Mcp-Server-Demo 是一个基于 Model Context Protocol (MCP) 的服务,专注于通过 AI 技术(如 Claude)对 GitHub 仓库进行代码审查。它提供了一系列工具,帮助开发者获取详细的代码反馈、改进建议,并支持特定领域的审查(如安全性、性能等)。
View on GitHub
Overview
基本能力
产品定位
Mcp-Server-Demo 是一个 AI 驱动的代码审查服务,旨在帮助开发者通过自动化工具提升代码质量和开发效率。
核心功能
- 仓库分析:通过 GitHub 仓库 URL 分析代码库
- 聚焦审查:支持指定审查重点领域(如安全性、性能等)
- 改进建议:提供具体的代码改进建议
- 文件级分析:对特定文件提供详细反馈
- 安全扫描:识别安全漏洞并提供修复建议
- 依赖分析:分析项目依赖,识别过时或存在漏洞的包
- 代码质量指标:提供代码复杂度、重复率和可维护性评分
- 性能分析:识别性能瓶颈和优化机会
- 最佳实践对比:将代码与行业最佳实践对比
- PR 描述生成:自动生成全面的拉取请求描述
- Cascade 提示生成:为改进代码生成可直接使用的提示
适用场景
- 开发者希望在提交代码前获取 AI 辅助的代码审查
- 团队需要自动化工具来确保代码质量和一致性
- 项目需要定期进行安全性和性能审查
- 开发者希望快速生成改进代码或 PR 描述
工具列表
仓库审查工具
review_repository
: 审查 GitHub 仓库list_reviewed_repos
: 列出已审查的仓库get_review_details
: 获取特定仓库的详细审查结果
改进和分析工具
suggest_improvements
: 获取改进建议analyze_dependencies
: 分析依赖scan_security_vulnerabilities
: 安全漏洞扫描analyze_code_quality
: 代码质量分析analyze_performance
: 性能分析compare_with_best_practices
: 最佳实践对比
代码生成工具
generate_pull_request_description
: 生成 PR 描述generate_cascade_prompt
: 生成 Cascade 提示generate_improved_code
: 生成改进代码
常见问题解答
- GitHub API 限制:建议设置 GitHub API token 以避免每小时 60 次的请求限制
- 审查范围:可以指定特定领域(如安全性、性能)进行聚焦审查
- 结果获取:可以获取整个仓库或特定文件的审查结果
使用教程
使用依赖
- Python 3.12 或更高版本
- MCP 1.6.0 或更高版本
安装教程
- 克隆仓库:
bash git clone https://github.com/kl63/Mcp-Server-Demo.git cd Mcp-Server-Demo
- 设置虚拟环境:
bash python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
- 安装依赖:
bash pip install -e .
- (可选) 设置 GitHub API token:
bash export GITHUB_API_TOKEN=your_github_token # Windows: set GITHUB_API_TOKEN=your_github_token
调试方式
- 启动 MCP 服务器:
bash python main.py
- 通过 Claude 交互:
- 审查仓库:
Please review the GitHub repository at https://github.com/username/repo-name
- 聚焦审查:
Review https://github.com/username/repo-name with focus on security and performance
- 获取改进建议:
Suggest improvements for the repository https://github.com/username/repo-name
- 列出已审查仓库:
Show me all the repositories that have been reviewed
- 生成 Cascade 提示:
Generate a Cascade prompt for the improvements to https://github.com/username/repo-name
- 获取改进代码:
Show me improved code for the file src/components/Button.js in https://github.com/username/repo-name