article
README
🚀 GitHub MCP 服务器
本项目是一个基于 Model Context Protocol (MCP) 的服务器实现,它借助 Cline 与 GitHub 问题进行交互,能有效管理 GitHub 仓库中的问题。
🚀 快速开始
本项目是一个通过 Cline 与 GitHub 问题交互的 Model Context Protocol (MCP) 服务器实现。你可以按照以下步骤快速搭建并使用该服务器。
✨ 主要特性
- 可列出仓库中的 GitHub 问题,便于统一查看和管理。
- 支持创建新的 GitHub 问题,操作便捷。
- 具备完善的错误处理和验证机制,保障系统稳定运行。
- 通过环境变量实现安全认证,提升系统安全性。
📦 安装指南
克隆仓库
git clone https://github.com/timbuchinger/mcp-github.git
cd mcp-github
安装依赖
pip install uv
uv venv
source .venv/bin/activate # 在 Windows 上:.venv\Scripts\activate
uv pip install -r requirements.txt
配置环境变量
cp .env.template .env
编辑 .env 文件并在其中添加你的 GitHub 个人访问令牌:
GITHUB_TOKEN=your_token_here
创建 GitHub 个人访问令牌的方法:
- 转到 GitHub 设置 -> 开发者设置 -> 个人访问令牌。
- 使用
repo权限生成新的令牌。 - 复制令牌并将其粘贴到你的
.env文件中。
💻 使用示例
运行 MCP 服务器
python -m src.mcp_github.server
该服务器将向 Cline 暴露两个工具:
基础用法
get_issues
从 GitHub 仓库获取问题列表:
{
"repo": "owner/repo"
}
create_issue
在 GitHub 仓库创建新问题:
{
"repo": "owner/repo",
"title": "问题标题",
"body": "问题描述"
}
🔧 技术细节
错误处理
服务器处理常见错误:
- 缺少 GitHub 令牌
- 无效的仓库名称
- 必要参数缺失
- GitHub API 错误
错误响应包含描述性消息,以帮助排查问题。
开发
该项目使用 uv 进行依赖管理。要设置开发环境:
# 安装所有依赖(包括开发依赖)
uv pip install -r requirements.txt
# 运行测试
pytest
# 格式化代码
black .
# 类型检查
mypy .
微信扫一扫