作者:Kedasha Kerr

排版:Alan Wang

了解维护者们如何使用 GitHub MCP Server,以及他们正在构建什么。

想象一下,你正在 VS Code 中使用 Copilot 的 Agent 模式进行编码。你问它:“PR #72 的状态是什么?”但模型并没有从 GitHub 获取详细信息,而是基于过时的上下文或猜测的语义编造了一个答案。听起来很有说服力,但其实是错的。毕竟,模型的表现取决于它所获得的上下文。如果大语言模型(LLM)无法连接其他应用和工具,它们的作用就大打折扣。

这正是 模型上下文协议(MCP) 诞生要解决的核心问题。

MCP 是一个开放协议,它标准化了 LLM 应用如何连接并与外部工具和数据源交互。它类似于语言服务器协议(LSP):二者都遵循客户端—服务器架构,简化了系统之间的交互,并提供了标准化的通信模式。从本质上说,MCP 就是 LLM 的 LSP。

而现在,GitHub 已经将其自有 MCP 服务器开源。它作为 GitHub 与任意 LLM 之间的可信接口,能够减少幻觉答案,并解锁全新的自动化工作流。

想要快速了解 MCP 吗?

我们整理了一份指南,涵盖你需要知道的一切(甚至包括那些你不好意思开口问的问题)。

👉获取指南

MCP 架构

MCP 基于客户端—服务器架构,其中 MCP 主机(如 Copilot Chat 这样的 AI 应用)与 MCP 服务器保持专用的 1:1 连接。需要理解的一些关键概念:

  • MCP 主机:希望通过 MCP 访问数据的 LLM 应用(例如 VS Code、Copilot Chat)

  • MCP 客户端:在主机应用内部,与 MCP 服务器保持 1:1 连接

  • MCP 服务器:通过 MCP 暴露特定功能的轻量级程序

GitHub MCP Server

GitHub MCP 服务器直接将 AI 工具连接到 GitHub 平台。与其执行 REST 或 GraphQL API 调用,你可以将兼容 MCP 的客户端或 agent 指向该服务器,并请求你所需的内容。

例如,你可以让它:

  • 列出某个仓库中所有未关闭的问题

  • 显示等待审核的拉取请求

  • 获取某个仓库或文件的元数据

  • 创建或评论一个 issue

神奇之处在于:你现在可以用自然语言发出请求,它们会被自动转换为结构化、语义明确的 API 调用。你不再需要创建自定义 API 端点或解析 markdown 描述。只需用自然语言请求,就能从 GitHub 获取实时数据。

而且,由于该服务器使用 MCP 协议,它可以与任何兼容主机一起工作。Copilot Workspace、VS Code 插件、基于 LLM 的产品、自定义聊天 UI、本地自有 agent——都能通过相同的标准化接口来请求上下文或触发操作。

工作原理

该架构在概念上很简单,但功能强大:

  • 服务器(Server):GitHub MCP 服务器是一个独立服务,用于监听结构化的 MCP 请求。

  • 客户端(Client):主机与服务器之间的连接器。它知道如何将用户意图转化为有效的 MCP 请求。

  • 主机(Host):AI 前端(如 IDE 助手或聊天 UI),负责承载对话并将结构化的提示传递下游。

当用户提出一个问题时:

  1. 主机将问题转化为语义请求

  2. 客户端将其打包为 MCP 请求

  3. 服务器从 GitHub 获取真实数据,并以结构化 JSON 格式返回

这创造了语言模型、用户体验以及可访问数据/工具之间的清晰分层。每一层都是模块化的、可测试的、可替换的。

如何开始使用 GitHub 远程 MCP 服务器

最棒的是:你今天就可以开始使用 GitHub 的 MCP 服务器!你需要准备:

  • MCP 主机:VS Code 或任何支持 MCP 的 LLM 应用

  • MCP 客户端:Copilot agent、LLM 聊天 UI 或其他支持 MCP 的自定义客户端

  • GitHub MCP 服务器:可在 GitHub MCP Server 官方仓库获取

在 VS Code 中安装 GitHub MCP Server 的步骤:

  1. 添加服务器配置:复制以下代码片段:
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/"
    }
  }
}
  1. 创建配置文件

    • 在项目根目录下新建一个名为 /vscode 的文件夹

    • 在该文件夹内创建一个名为 mcp.json 的文件

    • 将上面的代码粘贴到文件中

  2. 完成设置

    • 点击出现的启动按钮

    • 按提示完成 OAuth 流程

现在,你就可以在 VS Code 中使用 GitHub MCP 服务器了!

实际应用场景

MCP 服务器的早期采用者已经用它构建出了一些非常实用的工具。

  • Markdown 自动化

某团队使用 MCP 服务器将数十个 GitHub issue 转换成社区微型站点的 Markdown 内容文件。这些 issue 是在一次活动中收集到的。过去,将它们转换为可直接发布的网站内容需要繁琐的人工格式调整。有了 MCP,该团队编写了一个脚本,能够自动获取所有带标签的 issue,清理并格式化文本,并自动提交文件。整个过程变得快速且可重复执行。

  • 每周团队简报

另一团队构建了一个轻量级机器人,用于扫描特定的 GitHub 仓库并生成每周简报。它会提取最近的拉取请求、issue 以及已合并的更改,并将其总结成 Markdown 格式。报告会在每周一早晨自动发布到 Slack,让分布式团队无需开会也能保持一致。由于使用了 MCP,该机器人并不依赖硬编码的 GitHub 查询;同样的代码也可以在任何符合 MCP 的服务器上运行。

  • 对话式项目助手

一个小型开源团队开发了一个基于聊天的界面,贡献者可以用自然语言提出问题,比如“有哪些 issue 正在等待审核?”或者“上一个版本里改了什么?”。该 agent 利用 MCP 将这些问题转换为结构化的 GitHub 查询,获取实时数据,并返回对话式的摘要。

  • 个人 LLM 仪表盘

一名开发者将自己的 GitHub 账号连接到一个支持 MCP 的本地仪表盘 agent。该助手每天早上会主动推送提醒:需要审核的 PR、个人仓库里长期未更新的 issue,甚至基于已合并的更改生成草稿发布说明。它就像一个个性化的 Copilot,替你实时关注 GitHub 动态。

通过为 AI 模型提供真实、结构化的上下文,MCP 服务器让工具变得既更智能且更安全。

更多资料

Logo

微软开发者社区,邀请来自微软以及技术社区专家,带来最前沿的技术干货与实践经验。在这里,您将看到深度教程、最佳实践和创新解决方案。

更多推荐