GitHub分析器
启用大型语言模型实时分析 GitHub 仓库,提供检索仓库信息、分析问题、访问文档和可视化活动的工具。
服务介绍
GitHub 仓库分析器 MCP 服务器
一个模型上下文协议 (MCP) 服务器,使大型语言模型能够实时分析 GitHub 仓库。该服务器提供了用于检索仓库信息、分析问题、访问文档和可视化活动的工具。
功能
- 仓库信息工具:检索有关 GitHub 仓库的基本元数据
- 问题分析工具:列出并分类仓库中的问题
- README 访问资源:访问仓库文档
- 提交历史工具:分析最近的代码更改
- 活动分析工具:计算仓库活动指标
- 可视化工具:创建仓库活动的可视化图表
先决条件
- Python 3.10 或更高版本
- GitHub 账户和个人访问令牌
安装
- 克隆此仓库:
git clone <repository-url>
cd github-repo-analyzer
- 创建并激活虚拟环境:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- 安装依赖项:
pip install -r requirements.txt
- 使用你的 GitHub API 令牌创建一个
.env文件:
cp .env.example .env
编辑 .env 文件,并将 your_github_token_here 替换为你的实际 GitHub 个人访问令牌。
使用方法
运行服务器
要使用 MCP 检查器在开发模式下启动服务器:
mcp dev src/server.py
这将在浏览器中打开一个 Web 界面,你可以在其中测试服务器的工具。
在 Claude Desktop 中注册
要在 Claude Desktop 中注册服务器:
mcp install src/server.py
注册后,重启 Claude Desktop。然后你可以通过向 Claude 提问来与 GitHub 仓库分析器进行交互。
Claude 示例提示
- "你能分析 'modelcontextprotocol/python-sdk' 这个 GitHub 仓库,并告诉我它的目的和活跃程度吗?"
- "'openai/openai-python' 仓库中最主要的 5 个开放问题是什么?"
- "'anthropics/anthropic-sdk-python' 仓库在过去 30 天里有多活跃?"
- "请阅读 'microsoft/TypeScript' 仓库的 README 并解释其主要功能。"
- "生成显示 'facebook/react' 在过去 60 天内的提交活动的图表。"
开发
项目结构
github-repo-analyzer/
├── src/
│ ├── github_tools.py # GitHub API client implementation
│ └── server.py # MCP server implementation
├── requirements.txt # Dependencies
├── .env.example # Example environment variables
├── .gitignore # Git ignore file
└── README.md # Project documentation
添加新工具
要向服务器添加新工具,请遵循以下步骤:
- 在
github_tools.py文件中的GitHubAPIClient类里添加必要的功能 - 使用
@server.tool装饰器在server.py中向 MCP 服务器注册工具 - 使用 MCP 检查器测试工具
测试
如“使用方法”部分所述,使用 MCP 检查器测试服务器。您还可以为 GitHub API 客户端的功能编写单元测试。
安全注意事项
- 切勿将您的 GitHub API 令牌提交到版本控制系统
- 对于您的 GitHub 令牌,仅使用所需的最小范围
- 注意 GitHub API 的速率限制