GitHub MCP 使用指南

配置并开始使用 GitHub MCP 服务器。GitHub MCP 服务器是一个模型上下文协议服务器,使 AI 助手和工具能够与 GitHub API 交互,从而实现 GitHub 工作流的自动化、分析仓库数据以及构建 AI 驱动的 GitHub 集成。

有关服务器架构和组件的信息,请参阅架构。有关详细的配置选项,请参阅配置

先决条件

在开始使用 GitHub MCP 服务器之前,您需要:

  1. 一个 GitHub 账户
  2. GitHub 个人访问令牌(PAT)
  3. Docker(如果使用容器部署)
css 复制代码
Prerequisites

GitHub Account

Personal Access Token

Docker (for container deployment)

Ready to Install

创建 GitHub 个人访问令牌:

  1. 前往你的 GitHub 账户设置
  2. 导航到 开发者设置个人访问令牌细粒度令牌
  3. 点击"生成新令牌"
  4. 根据您将要使用的 GitHub API 选择必要的权限
  5. 安全地保存令牌 - 您需要它来运行服务器

源代码: README.md18-20

安装方法

可以通过多种方式安装并运行 GitHub MCP 服务器:

sql 复制代码
Choose Installation Method

Docker Container

VS Code Integration

Build from Source

docker run command
with token

VS Code MCP Configuration

go build command

Running Server

Executable Binary

Docker 容器安装

运行 GitHub MCP 服务器的最简单方法是使用 Docker:

bash 复制代码
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  ghcr.io/github/github-mcp-server

请将 <your-token> 替换为您的 GitHub 个人访问令牌。

来源: README.md148-153

VS Code 集成

对于 VS Code 用户,可以将 GitHub MCP Server 添加到 VS Code 设置中:

  1. 使用 Ctrl + Shift + P 打开 VS Code 设置(JSON)并输入 Preferences: Open User Settings (JSON)
  2. 添加以下配置:
bash 复制代码
{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "github_token",
        "description": "GitHub Personal Access Token",
        "password": true
      }
    ],
    "servers": {
      "github": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "-e",
          "GITHUB_PERSONAL_ACCESS_TOKEN",
          "ghcr.io/github/github-mcp-server"
        ],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
        }
      }
    }
  }
}

Alternatively, 你也可以在你的工作区创建一个 .vscode/mcp.json 文件,配置相同的内容(不包括外部的 mcp 键)。

源代码: README.md24-65

从源代码构建

如果您希望从源代码构建:

  1. 克隆仓库: git clone https://github.com/github/github-mcp-server.git
  2. 导航到仓库目录:cd github-mcp-server
  3. 构建二进制文件: go build -o github-mcp-server ./cmd/github-mcp-server
  4. 运行服务器:
ini 复制代码
GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> ./github-mcp-server stdio

源代码:README.md90-105cmd/github-mcp-server/main.go35-39

服务器配置

GitHub MCP 服务器通过命令行标志、环境变量和配置文件支持多种配置选项。

arduino 复制代码
Configuration Sources

Command-line Arguments

Environment Variables

Configuration File

Viper
Configuration Manager

GitHub MCP Server

Toolsets Configuration

GitHub Host Configuration

Logging Configuration

Other Options

工具集配置

GitHub MCP 服务器将功能组织成可以单独启用或禁用的工具集。默认情况下,所有工具集都是启用的,但您可以指定要使用的哪些工具集:

ini 复制代码
# Using command-line flag
github-mcp-server --toolsets repos,issues,pull_requests

# Using environment variable 
GITHUB_TOOLSETS="repos,issues,pull_requests" github-mcp-server

使用 Docker 时:

ini 复制代码
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLSETS="repos,issues,pull_requests" \
  ghcr.io/github/github-mcp-server

可用的工具集包括:

工具集 描述
仓库 与仓库相关的工具(文件操作、分支、提交)
issues 与问题相关的工具(创建、读取、更新、评论)
用户 与用户相关的工具
拉取请求 拉取请求操作(创建、合并、审查)
代码安全 代码扫描警报和安全功能
实验 实验性功能(尚未稳定)

指定 all 以启用所有可用工具集。

源代码: README.md111-170cmd/github-mcp-server/main.go71-86

动态工具集发现

与启动时启用所有工具集不同,您可以启用动态工具集发现,这允许 MCP 主机根据需要列出和启用工具集:

csharp 复制代码
# Using command-line flag
github-mcp-server --dynamic-toolsets

# Using environment variable
GITHUB_DYNAMIC_TOOLSETS=1 github-mcp-server

使用 Docker:

ini 复制代码
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_DYNAMIC_TOOLSETS=1 \
  ghcr.io/github/github-mcp-server

来源: README.md170-191cmd/github-mcp-server/main.go163-191

GitHub Enterprise Server

要与 GitHub Enterprise Server 一起使用,请指定主机名:

ini 复制代码
# Using command-line flag
github-mcp-server --gh-host enterprise.github.com

# Using environment variable
GITHUB_HOST=enterprise.github.com github-mcp-server

来源: README.md193-196cmd/github-mcp-server/main.go136-144

额外的配置选项

其他有用的配置选项包括:

  • --只读 : 限制服务器只进行读取操作
  • --log-file: 服务器日志的路径
  • --enable-command-logging: 记录所有命令请求和响应
  • --export-translations: 将翻译保存到 JSON 文件

Sources: cmd/github-mcp-server/main.go73-77

基本用法

一旦 GitHub MCP 服务器运行起来,就可以使用各种 MCP 兼容的客户端,包括 VS Code 和 Claude Desktop。

arduino 复制代码
"GitHub API""GitHub MCP Server""AI Client (LLM)""GitHub API""GitHub MCP Server""AI Client (LLM)"Initialize connectionReturn available toolsRequest tool execution(e.g., list_issues)Forward API requestReturn API responseReturn formatted resultProcess result

使用 VS Code Copilot

配置服务器后在 VS Code 中:

  1. 使用 Copilot Chat 启动 VS Code
  2. 切换到代理模式(位于 Copilot Chat 文本输入框旁边)
  3. 服务器将自动启动
  4. 让 Copilot 执行 GitHub 操作

例如: "查找仓库 github/github-mcp-server 中的所有未解决的问题"

来源: README.md24-27

使用 Claude Desktop

要与 Claude Desktop 配合使用,请添加此配置:

json 复制代码
{
  "mcpServers": {
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

源代码: README.md67-87

使用 mcpcurl 进行测试

mcpcurl 命令行工具允许您直接测试和与 GitHub MCP 服务器交互:

vbscript 复制代码
mcpcurl Flow

mcpcurl command

Connect to MCP server

Retrieve tool schema

Generate CLI commands

Execute command

Display response

示例用法:

css 复制代码
# List available tools
mcpcurl --stdio-server-cmd "docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> ghcr.io/github/github-mcp-server" tools --help

# Get information about a specific issue
mcpcurl --stdio-server-cmd "docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> ghcr.io/github/github-mcp-server" tools get_issue --owner github --repo github-mcp-server --issue_number 1

来源: cmd/mcpcurl/README.md18-22cmd/mcpcurl/README.md73-112

下一步

安装并配置完 GitHub MCP 服务器后,您可以:

  1. 探索适用于特定用例的可用工具集和工具
  2. 为国际化或特定需求自定义工具描述
  3. 使用服务器构建自己的 AI 驱动的 GitHub 工作流

如需了解可用工具和资源的更多信息,请参阅:

相关推荐
从善若水6 分钟前
【6G技术探索】MCP协议整理分享
ai·agent·6g·mcp
curdcv_po2 小时前
(っ´▽`)っ,嘤嘤嘤,读书小精灵MCP🧚🏻‍♀️提醒你读书了哦~
ai编程·mcp·trae
盏灯4 小时前
🐍 人人都是AI码农——游戏开发,全解析 | HTML+CSS+JS三件套
ai编程·mcp·trae
jack_yin7 小时前
Telegram DeepSeek Bot 重磅升级:轻松整合 MCP Server,解锁无限能力!
llm·mcp
火山引擎边缘云10 小时前
火山引擎边缘计算节点也支持 MCP 了!快来 get 这份使用教程
aigc·边缘计算·mcp
OliverZ10 小时前
使用 MCP Feedback Enhanced 减少 Cursor 请求次数
ai编程·cursor·mcp
李永宁12 小时前
AI 编辑器 + MCP 轻松实现设计稿生成前端代码
前端·mcp·trae
一个白的不能再白的人1 天前
假如我有一个cursor+mcp-figma
mcp
ZackSock1 天前
Cline 如何调用自己的 MCP 服务器
mcp·cline
ZackSock1 天前
自己开发 MCP 服务器
llm·ollama·mcp