使用说明

项目简介

GitHub MCP Server 是一个基于 Model Context Protocol (MCP) 构建的应用后端,它充当 LLM 客户端和 GitHub API 之间的桥梁。通过此服务器,LLM 能够以标准化的方式访问和操作 GitHub 资源,例如代码仓库、文件、议题 (Issues)、拉取请求 (Pull Requests) 和工作流 (Workflows)。

主要功能点:

  • 代码库操作: 创建、更新、删除代码仓库,创建和管理分支。
  • 文件操作: 创建、更新、获取代码仓库中的文件内容,支持批量文件操作。
  • 议题管理: 检索、创建、更新和评论代码仓库中的议题。
  • 拉取请求管理: 检索、创建、审查和合并拉取请求。
  • 代码和用户搜索: 根据关键词搜索代码、议题、拉取请求和用户。
  • 工作流管理: 列出和触发 GitHub Actions 工作流。
  • 全面的错误处理: 提供清晰的错误信息,方便问题排查。
  • Git 历史维护: 所有操作都维护 Git 历史,避免强制推送。

安装步骤

  1. 克隆仓库

    git clone https://github.com/piyushgIITian/github-enterprice-mcp.git
    cd github-enterprice-mcp
  2. 安装依赖并构建

    npm install
    npm run build

    构建完成后,会在项目根目录下生成 'dist' 目录,其中包含编译后的 JavaScript 文件。

  3. 创建 GitHub Personal Access Token

    • 访问 GitHub Personal Access Tokens (GitHub 设置 > Developer settings)。
    • 点击 "Generate new token"。
    • 选择您希望令牌访问的代码仓库范围(公开、全部或选择特定仓库)。
    • 创建一个具有 'repo' 权限范围的令牌(“完全控制私有仓库”)。如果仅使用公共仓库,则选择 'public_repo' 权限范围。
    • 复制生成的令牌。

服务器配置

要将 GitHub MCP Server 集成到 MCP 客户端(例如 Cline),您需要配置客户端的 MCP 服务器设置。以下是配置示例,以 JSON 格式添加到客户端的配置文件中。

Cline VS Code Extension 配置示例:

打开 VS Code,找到 Cline MCP 设置文件 ('cline_mcp_settings.json'),通常位于:

  • Windows: '%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings'
  • macOS: '~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/'
  • Linux: '~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/'

在 'mcpServers' 对象中添加以下配置:

{
  "mcpServers": {
    "github-enterprise": {
      "command": "node",
      "args": [
        "<path to github-enterprise-mcp/dist/index.js>"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>",
        "GITHUB_API_URL": "https://api.github.com" // GitHub.com API URL,如果是 GitHub Enterprise 请替换为您的实例URL,例如 "https://github.yourdomain.com/api/v3"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Claude Desktop App 配置示例:

找到 Claude Desktop 配置文件 ('claude_desktop_config.json'),通常位于:

  • Windows: '%APPDATA%\Claude'
  • macOS: '~/Library/Application Support/Claude/'
  • Linux: '~/.config/Claude/'

在 'mcpServers' 对象中添加与 VS Code 相同的配置。

配置参数说明:

  • '"github-enterprise"': 服务器名称,客户端用此名称引用该服务器。
  • '"command": "node"': 启动服务器的命令,这里使用 Node.js 运行时。
  • '"args": ["<path to github-enterprise-mcp/dist/index.js>"]': 启动命令的参数,指向构建后的 'index.js' 文件 绝对路径。请将 '<path to github-enterprise-mcp/dist/index.js>' 替换为实际路径。
  • '"env"': 环境变量配置。
    • '"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>"': GitHub Personal Access Token,请将 '<YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>' 替换为您之前创建的令牌。
    • '"GITHUB_API_URL": "https://api.github.com"': GitHub API 的 URL。对于 GitHub.com 用户,使用默认值即可。对于 GitHub Enterprise 用户,请替换为您的 GitHub Enterprise 实例的 API URL (例如 '"https://github.yourdomain.com/api/v3"').

注意: 请务必将 '<path to github-enterprise-mcp/dist/index.js>' 和 '<YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>' 替换为实际值。

基本使用方法

配置完成后,重启 Cline 客户端。您可以通过自然语言指令指示 Cline 使用 GitHub MCP Server 执行操作。例如:

  • "请使用 GitHub Enterprise MCP 服务器搜索关键词为 'react' 的代码仓库"
  • "使用 GitHub Enterprise MCP 服务器在我的代码仓库中创建一个名为 'feature-branch' 的新分支"
  • "使用 GitHub Enterprise MCP 服务器获取代码仓库 X 中 README.md 文件的内容"

更多使用示例,请参考仓库 README.md 文件中的 "Example Usage" 部分。

信息

分类

开发者工具