README
🚀 GitHub PR、问题、标签和版本的MCP工具
模型上下文协议(MCP)是一个开放标准,它能够实现大语言模型(LLM)与外部工具的无缝集成。虽然它可以在任何人工智能系统中实现,包括自定义的大语言模型设置,但集成和优化的程度会根据模型的架构和能力而有所不同。
这个MCP应用程序充当了大语言模型与GitHub仓库管理功能之间的桥梁,它可以对拉取请求进行自动分析,并提供全面的问题管理功能。它提供了一套强大的工具,可用于获取拉取请求的详细信息、创建问题,以及直接从桌面端的大语言模型更新问题。该应用程序在设计上具有模块化的特点,支持通过MCP工具接口进行扩展,并能与现有工作流程实现无缝集成。
该工具集通过标准化的MCP接口实现了拉取请求的自动分析、问题跟踪、标签管理和版本管理,非常适合那些希望简化GitHub工作流程自动化的团队。
✨ 主要特性
| 属性 | 详情 | |------|------| | 模型类型 | 基于MCP协议的GitHub集成工具 | | 训练数据 | 无 |
| 特性 | 函数名 | 描述 |
|----------------------------|--------------------------------|-----------------------------------------------------------------------------------------------|
| 拉取请求内容检索 | get_github_pr_content | 获取拉取请求的元数据,包括标题、描述、作者和状态。 |
| 拉取请求差异分析 | get_github_pr_diff | 检索显示拉取请求中文件更改的差异/补丁内容。 |
| 拉取请求描述更新 | update_github_pr_description | 使用“是什么/为什么/怎么做”部分以及文件更改来更新拉取请求的标题和描述。 |
| 问题创建 | create_github_issue | 使用常规的提交前缀(feat/fix/chore)和MCP标签创建新问题。 |
| 问题更新 | update_github_issue | 使用新的标题、正文和状态(打开/关闭)修改现有问题。 |
| 标签管理 | create_github_tag | 创建带有相关消息的新git标签,用于版本控制。 |
| 版本管理 | create_github_release | 生成带有自动发布说明和标签引用的GitHub版本。 |
| 网络信息 | get_ipv4_ipv6_info | 获取系统的IPv4和IPv6网络信息。 |
| MCP工具注册 | _register_tools | 通过MCP服务器注册并公开工具,以便于集成。 |
📦 安装指南
环境要求
- Python 3.11+
- GitHub个人访问令牌(具有
repo权限范围)
安装步骤
- 克隆仓库
git clone https://github.com/saidsef/mcp-github-pr-issue-analyser.git
cd mcp-github-pr-issue-analyser
- 安装依赖
uv init
uv venv
uv pip install -r requirements.txt
🔧 技术细节
架构图
+------------------------+
| |
| MCP Client/User |
| |
+------------------------+
|
| (stdio/SSE)
v
+--------------------+ +------------------------+
| | | PRIssueAnalyser |
| IP Integration | <------------| (FastMCP Server) |
| (ipinfo.io) | | |
+--------------------+ +------------------------+
|
| (API calls)
v
+------------------------+
| GitHub Integration |
+------------------------+
|
| (REST API)
+-------------------------+-------------------------+
| | |
+-------------+ +--------------+ +-------------+
| GitHub PRs | |GitHub Issues | |GitHub Tags/ |
| & Releases | | | | Releases |
+-------------+ +--------------+ +-------------+
特性说明
- 拉取请求管理:获取、分析和更新
- 问题跟踪:创建和更新
- 版本管理:标签和版本
- 网络信息:IPv4/IPv6详细信息
主要流程
- PRIssueAnalyser:处理工具注册和请求的主要MCP服务器
- GitHub Integration:管理所有GitHub API交互
- IP Integration:处理IPv4/IPv6信息检索
- MCP Client:通过标准输入输出或服务器发送事件(SSE)进行交互
💻 使用示例
与桌面端大语言模型的本地集成
要将MCP服务器添加到桌面端的大语言模型(如Claude等),需要将以下部分添加到配置文件中。基本结构包括定义服务器名称,并提供运行服务器的命令和任何必要的参数。
{
"mcpServers": {
"github_pr_issues": {
"command": "uvx",
"env": {
"GITHUB_TOKEN": "<your-github-token>"
},
"args": [
"https://github.com/saidsef/mcp-github-pr-issue-analyser.git"
]
}
}
}
📖 详细文档
代码源
我们最新的 mcp-github-pr-issue-analyser 代码可以在 [GitHub] 上找到。Fork我们!
贡献代码
我们非常欢迎您通过提交拉取请求来为项目做出贡献。
请阅读官方的贡献指南,以获取更多关于如何贡献的信息。
微信扫一扫