GitHub MCP Server
bmeyer99
README
GitHub MCP 服务器
一个用于全面 GitHub CLI 集成的模型上下文协议 (MCP) 服务器。此服务器实现了所有主要的 GitHub CLI 功能,允许 AI 助手与 GitHub 仓库、议题、拉取请求、文件等进行交互。
功能
- 完整的 GitHub CLI 对等性: 实现 GitHub CLI 的核心功能
- 安全: 仅在您的 GitHub 令牌的权限范围内执行操作
- 高效: 使用 Go 编写,以实现高性能和最小的资源使用
- 独立二进制文件: 无需运行时依赖
- 多平台: 适用于 macOS、Linux 和 Windows
安装
下载二进制文件
从 Releases 页面下载适用于您平台的预构建二进制文件。
从源代码构建
# 克隆仓库
git clone https://github.com/your-username/github-mcp-server-go.git
cd github-mcp-server-go
# 构建二进制文件
go build -o github-mcp-server
# 将二进制文件移动到 PATH 中的目录(可选)
sudo mv github-mcp-server /usr/local/bin/
用法
GitHub 个人访问令牌
在使用 GitHub MCP 服务器之前,您需要一个具有适当权限的 GitHub 个人访问令牌:
- 转到 GitHub 设置 > 开发者设置 > 个人访问令牌
- 创建一个新令牌,其中包含
repo
范围(用于完全仓库访问)或public_repo
范围(仅用于公共仓库访问) - 复制生成的令牌以与 MCP 服务器一起使用
运行服务器
您可以通过两种方式运行 GitHub MCP 服务器:
# 使用作为命令行标志提供的令牌运行
./github-mcp-server -token YOUR_GITHUB_TOKEN
# 或者使用作为环境变量提供的令牌运行
export GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_TOKEN
./github-mcp-server
与 Claude Desktop 集成
要将 GitHub MCP 服务器与 Claude Desktop 一起使用:
-
编辑您的 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
将 GitHub MCP 服务器添加到配置中:
{
"mcpServers": {
"github": {
"command": "/path/to/github-mcp-server",
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_GITHUB_TOKEN"
}
}
}
}
- 重新启动 Claude Desktop 以应用更改
支持的工具
GitHub MCP 服务器实现了以下工具类别:
仓库管理
get_repository
: 获取仓库详细信息list_repositories
: 列出用户仓库create_repository
: 创建新仓库
议题管理
get_issue
: 获取议题详细信息list_issues
: 列出仓库议题create_issue
: 创建新议题close_issue
: 关闭现有议题
拉取请求管理
get_pull_request
: 获取拉取请求详细信息list_pull_requests
: 列出仓库拉取请求create_pull_request
: 创建新拉取请求merge_pull_request
: 合并现有拉取请求
GitHub Actions
list_workflows
: 列出仓库工作流程list_workflow_runs
: 列出工作流程运行trigger_workflow
: 触发工作流程
文件操作
get_file_content
: 获取文件内容create_file
: 创建新文件update_file
: 更新现有文件delete_file
: 删除文件
搜索操作
search_code
: 搜索仓库中的代码search_issues
: 搜索议题和拉取请求
示例
以下是一些如何将这些工具与 Claude 一起使用的示例:
创建新仓库
请创建一个名为 "awesome-project" 的新 GitHub 仓库
获取仓库信息
获取有关 "cli/cli" 仓库的信息
创建一个议题
在我的 "project-name" 仓库中创建一个标题为 "Fix button styling" 且包含问题描述的议题
搜索代码
在我的仓库中搜索使用 useState hook 的 React 组件的示例
安全注意事项
- GitHub MCP 服务器仅在您的 GitHub 个人访问令牌的权限范围内执行操作
- 为了获得最大安全性,请创建一个仅具有您的用例所需权限的令牌
- 服务器不存储您的令牌,但会将其与每个请求一起传输到 GitHub API
- 考虑在本地而不是在远程服务器上托管服务器
许可证
该项目已获得 MIT 许可证的许可 - 有关详细信息,请参见 LICENSE 文件。
贡献
欢迎贡献!请随时提交拉取请求。
- Fork 仓库
- 创建您的功能分支 (
git checkout -b feature/amazing-feature
) - 提交您的更改 (
git commit -m 'Add some amazing feature'
) - 将其推送到分支 (
git push origin feature/amazing-feature
) - 打开一个拉取请求
致谢
- 受 GitHub CLI 的启发
- 使用 模型上下文协议 规范构建
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。