编辑器直接取代 GitHub CLI,GitHub 官方 MCP 服务踩坑指南

644 阅读7分钟

全文速览

大家好,我是大家的林语冰。我正在参加 Trae「超级体验官」创意实践征文,本文所使用的 Trae 免费下载链接:www.trae.com.cn/?utm_source…

MCP 全称模型上下文协议,是一种开放协议,它统一了应用程序为大语言模型提供上下文的标准。有人把 MCP 比喻为“AI 界的 HTTP 协议”,你也可以将 MCP 想象成 AI 应用程序的 USB-C 端口,它简化了我们与大语言模型交互与开发。

MCP 火了之后,优秀的 MCP 服务器 和客户端层出不穷,目前 mcp.so 官网已经收录了超过一万三千个 MCP 服务,其中当然也包括 GitHub 官方出品的 GitHub MCP 服务。

mcp-so.png

你会发现,有了 GitHub MCP 服务,我们可以把编辑器变成一个 GitHub CLI,甚至不用打开 GitHub 官网,纯靠聊天就能在编辑器里远程遥控新建仓库或查看 issues 等 GitHub 功能。

编辑器选择

目前支持 MCP 的编辑器不多,我们常用的 VSCode 就能支持,但需要借助 Clime 等插件和相对复杂的配置才能免费白嫖。

所以本文我们会以 Trae 为例,它支持 MCP 服务,除了内置常用的文件系统等 MCP 服务,还支持自定义智能体。Trae 还支持国内版和海外版,这样你的网络环境一定程度上可以改善。

此外,前文提及的 mcp.so 官网目前在海内外都是一流的 MCP 资源,而该网站也是由 Trae 赞助的。

综上所述,Trae 是一个性价比较高且复杂度较低的理想选择,特别适合我这种 AI 小白。

环境准备

MCP 协议本身和操作系统没有强耦合,所以 MacOS 和 Windows 都能支持。一般而言,MacOS 的配置更加丝滑,但我是 Windows 用户,所以本文会以 Windows 为例,其中涉及一些路径相关等踩坑指南,MacOS 用户可以选择性无视。

我们首先要下载最新版本的 Trae,百度一下在 Trae 官网下载,一直下一步就欧了。如果你已经安装过 Trae,请确保升级到最新版本,因为旧版 Trae 可能没有支持 MCP 服务。

其次,下载最新稳定版的 Node.js,因为 GitHub MCP 服务可以视为一个大模型服务的黑盒,我们需要通过 npm 下载相关模块。Node.js 的安装也不复杂,同样按照默认流程无脑下一步就欧了。

注意,如果你是在 Trae 的终端安装 Node,记得重启一下 Trae,确保 Node 被及时加载。

可以使用终端命令验证:

npm-v.png

Trae 的 MCP 市场

接下来我们打开 Trae,进入上方的“AI 侧栏”,点击右侧“AI 功能管理”的设置图标,就能看到“MCP”功能的选项,点击进入。

配置 MCP 有两种方式,一种是通过 Trae 的内置 MCP 市场配置,类似于在 VSCode 插件市场里搜索插件,只不过现在搜索的是 MCP 罢了;另一种是手动编写 MCP 相关的 JSON 配置文件,配置 Trae 市场中无法找到的 MCP 服务,或者想使用自己开发的 MCP 服务。

本质上,第一种配置方式也会自动转化为第二种方式的配置文件,只是更加简单。

GitHub MCP 服务比较常用,所以我们先试试从 MCP 市场添加。首先在 MCP 市场里点击“添加”,然后输入“Git” 或 “GitHub”,就可以看到 GitHub 官方的 MCP 服务了:

git-mar.png

继续点击加号添加,这里我们是在本地编辑器调用 GitHub 服务,所以需要 token 授权,类似于我们通过网站访问 GtiHub 账号时需要注册登录来确保信息安全:

here.png

我们需要生成一个 token,点击这里的“here”,就会直接跳转到 GitHub 官网的授权页面。

token-gen.png

然后按流程生成 token 就欧了,点击“generate new token”,名称任意,比如就叫“trae”或“github-mcp”,然后按需选择 token 的过期时间:

trae-token.png

最重要的是仓库的访问权限,根据你想让 GitHub MCP 服务操作的仓库来授权,比如所有仓库或只包括公开仓库等。权限方面有多种选项,比如读写文件、读写代码、搜索仓库和账号信息等,根据你的业务需求授权即可。

建议先只授权账号信息和基本的仓库操作,等测试熟练再结合业务扩大权限,灵活配置。但是注意,这里的权限会限制之后我们的 GitHub MCP 服务的操作,比如你不授权 MCP 服务你的邮箱信息,然后你通过聊天问 AI 你的邮箱是什么,AI 调用 MCP 时发现没有权限,就无法回答你的问题,或实现聊天创建仓库等任务。

权限勾选完毕后,点击“Generate token”就欧了。注意,出于安全原因,这里的 token 只能查看一次,关闭页面后再回来是不会显示 token 的,所以建议把 token 安全复制粘贴到一个临时文本中保存,配置完毕及时删除就行。如果忘记复制,又不小心关闭了页面,那就只能重新生成一个新的 token 了。

接下来回到 Trae 中,把新鲜出炉的 token 粘贴到刚刚添加 GitHub MCP 的 JSON 中,理论上就配置完毕了:

mcp-token.png

再次点击设置的 MCP 选项,如果 github 显示可使用就欧了,说明我们的配置是正确的。但如果你是 windows 用户,可能和我一样还是失败了。

GitHub MCP 服务配置

对于 Windows 用户,这一步坑比较多,主要是路径的问题和 npx 的执行问题。如果你在上一步没有显示 github 变绿可使用,那就只能手动配置了。我们说过,MCP 市场配置和手动 JSON 配置本质上是等价的。

默认情况下,Node.js 安装在默认路径,如果你不确定具体路径,可以在以管理员打开 cmd 终端,使用下列命令查看:

# 查看 Node 安装位置
where node

这里查看 Node.js 安装位置是为了编写配置文件。默认情况下,Node.js 的安装路径大概是:

C:\\Program Files\\nodejs\\node.exe

但你可能像我一样使用了 nvm,或者手动安装到了别的系统盘,那么安装路径可能有所不同,但只要确保能查找到安装位置即可。另外,Windows 要注意路径的 \\ 双重反斜杠,不然配置路径可能有问题。

然后我们可以使用 npm 全局下载 GitHub MCP 模块了:

# 下载 GitHub MCP
npm install -g @modelcontextprotocol/server-github

# 查看 GitHub MCP 安装位置
npm list -g @modelcontextprotocol/server-brave-github

这里确保我们得到了三个数据:

  • Node.js 的安装路径
  • GitHub MCP 模块的安装路径
  • GitHub 的 token

然后我们就可以配置 MCP 服务了:

{
  "mcpServers": {
    "github": {
      "command": "你的 Node 安装路径",
      "args": ["你的 GitHub MCP 安装路径"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "你的 GitHub token"
      }
    }
  }
}

再次点击设置的 MCP 选项,如果 github 显示可使用就欧了,则配置成功:

mcp-green.png

测试 GitHub MCP 服务

接下来使用智能体测试一下 GitHub MCP 服务,点击设置的“智能体”选项,点击“创建智能体”,名称任意,比如简单粗暴的“GitHub”,记得勾选配置好的“github” MCP 服务,然后再保存:

git-agent.png

智能体创建完毕后,回到 AI 侧栏聊天窗口,点击“@智能体”,选择我们的“GitHub”自定义智能体,然后通过聊天进行提问,或者测试你已经授权的任何 GitHub 操作,比如查看仓库等:

github-repo.png

然后智能体会联手 GitHub MCP 服务尝试调用 GitHub API,自动执行终端命令等,只要有相关权限,就能进行 GitHub 相关的任务:

github-feed.png

参考文献