
Features

2025.02.17
0
TypeScriptGitHub 集成仓库管理文件操作提交处理开发效率交流协作
GitHub MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,提供与 GitHub 集成的能力。它支持通过 MCP 工具与 GitHub 仓库进行交互,包括仓库管理、文件操作和提交处理等功能。
View on GitHub
Overview
基本能力
产品定位
GitHub MCP Server 是一个用于与 GitHub 仓库交互的中间件服务,旨在简化开发者在 GitHub 上的操作流程。
核心功能
- 账户管理:支持多账户配置和切换。
- 仓库管理:创建、克隆、重命名仓库。
- 文件操作:读取、写入、推送、拉取文件。
- 提交操作:创建提交、列出提交历史。
- 目录同步:本地与远程目录的双向同步。
- 仓库比较:支持仓库间的差异比较。
适用场景
- 团队协作开发:简化多人协作时的仓库和文件管理。
- 自动化脚本:通过脚本自动化 GitHub 操作。
- 持续集成/部署:集成到 CI/CD 流程中,自动化代码推送和拉取。
工具列表
- list_accounts:列出配置的 GitHub 账户。
- select_account:选择用于后续操作的 GitHub 账户。
- create_repository:创建新的 GitHub 仓库。
- clone_repository:克隆仓库到本地目录。
- rename_repository:重命名现有仓库。
- push_file:推送文件到仓库。
- pull_file:从仓库拉取文件。
- sync_directory:同步本地与远程目录。
- create_commit:创建包含多个文件变更的提交。
- list_commits:列出仓库的提交历史。
常见问题解答
- 多账户配置:通过环境变量
GITHUB_TOKEN_<N>
和GITHUB_OWNER_<N>
配置多个账户。 - 默认账户:设置
DEFAULT_OWNER
环境变量指定默认账户。
使用教程
使用依赖
确保已安装 Node.js 和 npm。
安装教程
- 安装服务:
npm install @modelcontextprotocol/server-github
- 配置 MCP 设置文件 (
cline_mcp_settings.json
):
{
"mcpServers": {
"github": {
"command": "node",
"args": ["/path/to/github-mcp-server/dist/index.js"],
"env": {
"GITHUB_TOKEN_1": "your-github-token",
"GITHUB_OWNER_1": "your-github-username"
},
"disabled": false,
"alwaysAllow": []
}
}
}
调试方式
- 构建服务:
npm install
npm run build
- 运行服务并检查日志输出。