模型上下文协议 (MCP) 概述
模型上下文协议 (MCP) 是一个开放标准,用于定义应用程序与大型语言模型 (LLM) 共享上下文的方式。 MCP 提供了一种将 AI 模型与不同的数据源和工具连接起来的标准化方式,使它们能够更高效地协同工作。
通过使用 MCP 将 GitHub Copilot 与各种现有工具和服务集成,可以扩展其功能。 MCP 可在所有主流Copilot平台上运行——无论你是在 IDE 中工作、使用 GitHub Copilot CLI、在 GitHub Copilot app 中工作,还是在 GitHub.com 上将任务委派给智能体。 还可以使用 MCP 创建能与 Copilot 一同工作的新工具和服务,以便自定义和增强体验。
例如,可以连接问题跟踪器,以便 Copilot 在修复问题时查找 bug,而无需要求您将问题复制到聊天中。
有关 MCP 的详细信息,请参阅官方 MCP 文档。 有关来自合作伙伴和社区的 MCP 服务器的特选列表,请参阅 GitHub MCP 注册表。
企业和组织可以通过 Copilot 中的 MCP 服务器 策略,选择为其组织或企业中的成员启用或禁用 MCP 的使用。 该策略默认处于禁用状态。 请参阅“管理企业中 GitHub Copilot 的策略和功能”和“管理组织中GitHub Copilot的策略和功能”。 MCP 策略 仅适用于 从配置策略的组织或企业拥有 Copilot Business 或 Copilot Enterprise 订阅的用户。 Copilot Free、 Copilot Pro、 Copilot Pro+或 Copilot Max没有 受此策略约束的 MCP 访问权限。
MCP 通过提示、文件和说明补充你提供的上下文。 它添加与工具和数据的连接,而不是替换有关代理应如何工作的指导。 有关提示和管理上下文的指南,请参阅 提示和GitHub Copilot上下文。
通过 GitHub已验证的 MCP 服务器(连接器)连接一次服务,然后无需在每个接口中重复设置或单独登录,即可跨受支持的 Copilot 图面使用连接。 这些连接也适用于在云沙盒中运行的 Copilot 会话,但不适用于在 GitHub Actions 上运行的会话。 请参阅“Copilot连接器”。
可在何处使用 MCP
MCP 设置取决于你使用 Copilot的位置:
- 该项 GitHub Copilot app:可以使用为存储库或本地 Copilot 配置配置的 MCP 服务器。 还可以从“ 自定义 ”选项卡发现和安装其他 MCP 服务器。
- Copilot CLI: GitHub Copilot CLI 支持本地和远程 MCP 服务器。 GitHub MCP 服务器内置,无需其他配置即可使用。
- Copilot cloud agent (包括 automations)和 Copilot code review: GitHub.com 支持在存储库级别配置的 MCP 服务器。 配置适用于 Copilot cloud agent、automations 和 Copilot code review。 GitHub MCP 服务器和 Playwright MCP 服务器默认已配置。
- IDEs:MCP 服务器在 Visual Studio、JetBrains IDE系列、Visual Studio Code、Xcode 和 Eclipse 中受支持。 连接和身份验证选项取决于 IDE。 请参阅“使用模型上下文协议(MCP)服务器来扩展 GitHub Copilot 聊天功能”。
GitHub.com聊天具有预配置的工具,例如用于创建分支和搜索代码的工具。 这与 Copilot cloud agent 和 Copilot code review 的存储库 MCP 设置是分开的。 请参阅“GitHub.com 和 GitHub Mobile 上的GitHub Copilot”。
MCP for Copilot cloud agent
以下部分介绍 MCP 的默认值和配置 Copilot cloud agent,包括 automations。 存储库级别的 MCP 设置也适用于 Copilot code review如下所述。 对于其他平台,请使用 后续步骤中的设置指南。
默认 MCP 服务器
Copilot cloud agent 开始时已配置两个 MCP 服务器:
- GitHub 提供对存储库数据(如问题和拉取请求)的访问权限。 默认情况下,它使用具有对当前存储库的只读访问权限的专用作用域令牌。 该存储库外部的访问需要显式配置具有更广泛访问权限的凭据。
- Playwright 提供了用于读取、交互和获取网页屏幕截图的工具。 默认情况下,它只能通过
127.0.0.1或localhost访问代理自身环境中的 Web 资源。
这些默认值特定于云环境。 例如,Copilot CLI 包括 GitHub MCP 服务器而不需要额外配置,但你需要单独配置其他服务器。
个人 MCP 服务器
个人 MCP 服务器将 Copilot 连接到适用于您自己工作流的工具和数据。 配置一次服务器,使其在你启动的每个云会话中都可用。 这些服务器仅适用于你,不会影响在同一存储库中工作的其他用户。
在配置个人 MCP 服务器之前,请检查所需的服务是否由 GitHub已验证的 MCP 服务器(连接器)涵盖。 GitHub-verified MCP 服务器在云和本地会话中均可用,并且 GitHub 为您处理 MCP 服务器配置和身份验证。 相比之下,个人 MCP 服务器仅支持基于密钥的身份验证,并且仅在云沙盒中可用。 请参阅“Copilot连接器”。
将个人 MCP 服务器用于跨存储库或需要自己的凭据的连接。 若要为在特定存储库中工作的协作者提供共享配置,请改用 存储库级配置 。
- 导航到位于 的Copilot主页。
- 在左侧菜单中,单击“ 自定义 ”菜单。
- 检查所需服务是否在 GitHub验证的 MCP 服务器支持范围内。
- 如果 GitHub验证的 MCP 服务器不满足你的需求,并且你想要配置自己的 MCP 服务器,请选择“添加”下拉菜单,然后单击 MCP 服务器。
- 输入服务器名称、传输类型、URL 或启动命令和其他必需配置。
- 如果需要身份验证,请在
COPILOT_MCP_中创建名称以为前缀的机密,例如COPILOT_MCP_API_KEY,并在服务器配置中引用它们。 - 单击“添加服务器”。
默认情况下,个人 MCP 服务器机密在作用域为个人帐户的会话中可用。 还可以允许在所选组织中使用您的已验证服务器。
Limitations
- 每个云会话都提供个人 MCP 服务器。 当前无法选择要为单个会话启用的服务器。
- 自定义 HTTP 和 SSE MCP 服务器在其 URL 中不支持查询参数。 请改为将这些值作为请求标头传递。
- 如果服务器不可用,请检查其配置,并确认是否存在任何必需的密钥,并且可供运行会话的帐户或组织使用。
- 在个人和存储库级别配置中,最多可以使用 50 台 MCP 服务器。
存储库级配置
存储库级 MCP 服务器将 Copilot 连接到工具和数据,以便在特定存储库中工作。 存储库管理员在存储库设置 GitHub.com中配置这些服务器,并且该配置可供具有存储库写入访问权限的任何人使用。 这些设置同时适用于 Copilot in the cloud (包括 automations)和 Copilot code review。 可以单独禁用 MCP 工具在代码评审中的使用。
当协作者需要相同的工具(例如共享问题跟踪器或文档服务)时,请使用存储库级配置。 对于需要身份验证的服务器,请为 Copilot 使用服务帐户,而不是个人凭据。 存储库级服务器不能引用个人 MCP 服务器机密。
可以将个人服务器和存储库级服务器一起使用。 如果两种配置都定义了具有相同名称的服务器,则存储库级配置优先。
此存储库设置与 Copilot CLI 使用的项目 MCP 配置文件不同。 使用适用于你的 Surface 的设置指南,而不要假设同一配置位置在任何地方都适用。
Automations 可以使用这些 MCP 服务器中的工具,但只能使用你为每个 automation 选择的工具。 请参阅“Copilot自动化”。
警告
当你通过 @mentioning 它或给它分配议题或拉取请求,将工作委托给 Copilot 时,Copilot 会自主使用已配置的 MCP 工具,并且在调用它们之前不会请求批准。 对于这些工作流,请查看每个服务器,只允许完成您的任务所需的工具和访问权限。
为供 Copilot cloud agent 和 Copilot code review 使用而配置 MCP 服务器时,请记住:
- Copilot cloud agent 和 Copilot code review 仅支持 MCP 工具。 它们当前不支持 MCP 服务器提供的资源或提示。
- 对于在存储库设置或自定义代理配置文件中配置的 MCP 服务器,Copilot cloud agent 和 Copilot code review 目前不支持使用 OAuth 进行身份验证和授权的远程服务器。
Copilot code review 另外还要求工具声明 annotations.readOnlyHint: true。 缺少此批注或此批注设置为 false 的工具将被排除。
有关配置、身份验证和验证过程,请参阅 为存储库配置 MCP 服务器。
自定义代理的 MCP 服务器
对于 Copilot cloud agent,代理配置文件可以为该自定义代理定义 MCP 服务器,而不是使其可供存储库中工作的每个代理使用。
mcp-servers 配置文件属性不用于在 IDE 中直接运行的自定义代理。
对于 Copilot cloud agent,首先处理默认服务器配置,然后处理自定义代理配置,然后处理存储库设置。 后面的配置可以覆盖前面的设置。 此命令不描述 Copilot CLI 中的项目文件优先顺序。
有关配置档案格式、支持的属性和处理规则,请参阅 自定义代理配置。
最佳做法
- 启用第三方服务器之前,请审核第三方服务器。 对照贵组织的要求检查其工具、身份验证要求和数据访问。
- 仅启用任务所需的工具。 在存储库设置中,使用
tools输入框将特定工具加入允许列表,最好是只读工具,而不是启用每个工具。 在 automations中,选择所需的特定工具。 - 使凭据的范围限定为所需的资源。 除非任务需要它,否则不要扩大默认令牌的访问权限 Copilot cloud agent 。
- 在依赖配置之前验证配置。 确认代理会话中提供了哪些服务器和工具。 有关环境的设置说明,请参阅 后续步骤。
关于 GitHub MCP 服务器
GitHub MCP 服务器是由GitHub提供和维护的模型上下文协议(MCP)服务器。
GitHub MCP 服务器可用于:
- 自动化并简化与代码相关的任务。
- 连接第三方工具(如 Cursor、Windsurf 或未来集成项)以利用 GitHub 的上下文和人工智能功能。
- 实现无需本地设置、可从任何设备访问的基于云的工作流。
- 调用 GitHub 工具(如 Copilot cloud agent (需要 GitHub Copilot 订阅)和 code scanning (需要 GitHub Advanced Security 订阅),以帮助生成代码和安全分析。
若要了解如何使用 GitHub MCP 服务器,请参阅 在 IDE 中使用 GitHub MCP 服务器。
若要了解编辑器是否支持 GitHub MCP 服务器,以及哪些连接和身份验证方法可用,请参阅存储库中的github/github-mcp-server。
远程访问
无需任何本地设置即可通过GitHubCopilot Chat远程方式访问 Visual Studio Code MCP 服务器。 远程服务器只能访问远程 GitHub MCP 服务器中可用的其他工具集。 有关此类工具的列表,请参阅 附加工具集 在 github/github-mcp-server 存储库中。
GitHub如有必要,MCP 服务器还可以在任何 MCP 兼容的编辑器中本地运行。
工具集自定义
重要
请始终查看 GitHubgithub/github-mcp-server 上的 MCP 服务器存储库,了解最新的工具集和权威配置指南。
GitHub MCP 服务器支持通过工具集启用或禁用特定功能组。 工具集允许你控制 GitHub AI 工具可用的 API 功能。
仅启用所需的工具集可提高 AI 助手的性能和安全性。 更少的工具意味着更好的工具选择准确性和更少的错误。 禁用未使用的工具集还会释放 AI 上下文窗口中的令牌。
工具集不仅包括工具,还包括相关的 MCP 资源和提示(如果适用)。
若要了解如何为 GitHub MCP 服务器配置工具集,请参阅 为 GitHub MCP 服务器配置工具集。
安全性
对于所有公共存储库和受覆盖 GitHub Advanced Security的专用存储库,与 GitHub MCP 服务器的交互均受推送保护保护,这会阻止 AI 生成的响应中的机密,并阻止它们包含在代表你执行的操作中。 你还可以通过 AI 编码代理主动扫描代码中泄露的机密信息。 有关详细信息,请参阅“使用 GitHub MCP 服务器扫描机密”。
关于GitHub MCP 注册表
GitHub MCP 注册表是来自合作伙伴和社区的 MCP 服务器的特选列表。 可以使用注册表发现新的 MCP 服务器并查找满足特定需求的服务器。
注意
GitHub MCP 注册表当前处于公开预览状态,可能会改变。
代理查找器
代理查找器是一种发现服务,可帮助 GitHub Copilot 在运行时为任务查找正确的功能(例如 MCP 服务器、工具、代理和技能),而无需提前配置每个功能。 与 MCP 注册表类似,它会搜索能力目录,并返回按相关性排序的匹配结果,供 GitHub Copilot 按需使用。 代理查找器实现开放式代理资源发现 (ARD) 规范。
有关 Copilot CLI 设置,请参阅 使用 agent finder。
af提供一项GitHub Copilot app内置技能。 请参阅“GitHub Copilot 应用的内置技能”。 若要浏览目录,请参阅GitHub代理查找器。
后续步骤
- 为 GitHub Copilot CLI 添加 MCP 服务器 - 将 MCP 服务器添加到 Copilot CLI
- AUTOTITLE—在 中管理 MCP 服务器
- 为存储库配置 MCP 服务器—为Copilot cloud agent和Copilot code review配置存储库 MCP 服务器
- 使用模型上下文协议(MCP)服务器来扩展 GitHub Copilot 聊天功能 - 将 MCP 服务器添加到 Copilot Chat IDE 中
- 设置 GitHub MCP 服务器 - 设置 GitHub MCP 服务器