连接连接GitHub Copilot

MCP Client

GitHub Copilot

当宿主支持时,通过托管的 OAuth 配置连接 VS Code 和 GitHub Copilot。

前置条件

使用带有 GitHub Copilot Chat 和 MCP 支持的 VS Code。接口与前置条件:

  • 具体接口:带有 GitHub Copilot Chat 扩展的 VS Code (编辑器 OAuth 路径)。
  • 配置文件:%APPDATA%\Code\User\mcp.json (Windows)、~/Library/Application Support/Code/User/mcp.json (macOS) 或 ~/.config/Code/User/mcp.json (Linux)。
  • 使用 servers 键而不是 mcpServers。
  • 端点:https://xmemo.dev/mcp。
  • 账户:在 https://xmemo.dev 拥有有效的 XMemo 账户。

安装 / 设置

在 servers 键下编辑您的 VS Code 用户配置 mcp.json 并添加托管的 XMemo URL。不要在此处使用 Copilot CLI 配置;其直接路径有其自己的路由 (/docs/mcp/copilot-cli):

  • 编辑器条目仅保留 URL。
  • 第一次工具调用将打开浏览器 OAuth。
  • 不要在此 VS Code 条目中添加 Authorization 标头。

设置凭据

无需密钥 — 在 VS Code / GitHub Copilot Chat 中完成浏览器 OAuth。不要设置 XMEMO_KEY 或将承载令牌粘贴到 mcp.json 中:

No XMEMO_KEY
Complete browser OAuth in VS Code / GitHub Copilot Chat

生成 / 确认 XMEMO_AGENT_INSTANCE_ID

经过审查的 VS Code OAuth 列表没有客户端身份标头。不要向 mcp.json 添加 XMEMO_AGENT_INSTANCE_ID;确认此 OAuth 路径使用其授权管理的归属。

保留现有配置块

使用经过审查的 VS Code / GitHub Copilot 配置块。保留 servers 键和仅包含 URL 的 OAuth 形态;不要将 Copilot CLI 承载配置复制到其中:

{
  "servers": {
    "xmemo": {
      "type": "http",
      "url": "https://xmemo.dev/mcp"
    }
  }
}

重启客户端

保存 mcp.json 后重新加载 VS Code 窗口 (Developer: Reload Window) 或重启 MCP 连接,以便 Copilot 读取当前的服务器定义。

使用真实的召回调用进行测试

使第一次 MCP 调用为只读。这是实际的召回调用,而不是健康检查占位符,并且它不会写入记忆。

recall({ query: "connection check", limit: 1 })

预期响应(字面形态)

成功的调用将返回以下公开的排序文本形态;引用和内容是来自授权记忆空间的真实值。

### XMemo Memory Results:
1. Reference: <opaque-memory-id> | Location: <location>
   > <memory content>

首个实用任务:合成记忆生命周期

在 GitHub Copilot Chat 内演练完整的合成记忆任务:

  • 1. 保存合成事实:要求 Copilot Chat 记住规范 ("Demo project timestamps use UTC.") 到 "projects/demo-onboarding/conventions"。
  • 2. 无状态转换:在 GitHub Copilot 中打开新聊天会话或重新加载 VS Code 窗口。
  • 3. 带溯源归属的召回:查询 "demo project timestamp format"。确认返回的 Reference 和 Location。
  • 4. 修正记忆:使用 update_memory 将规范更新为 ISO 8601 格式。
  • 5. 可选清理:验证结束后,通过 forget 软删除规范。

功能与配置文件工具

VS Code 中的 GitHub Copilot 可以访问 MCP 文档契约中为 generic-public 配置文件定义的限定工具:

  • 核心记忆工具:remember, recall, update_memory, forget, read_memory, explain_memory, search_memory, recall_context。
  • 工作区工具:get_mcp_identity, get_project_summary, project, todo, open_project_workspace, open_todo_board, ledger, open_ledger。

限制与边界

VS Code 中 GitHub Copilot 的操作边界:

  • 工作区隔离:操作严格限制在授权用户的工作区内。
  • 编辑器/CLI 隔离:VS Code OAuth 会话不会传播到外部终端工具。
  • 不混合标头:不要向 mcp.json 中的 servers 条目添加 Authorization 标头。

常见错误

VS Code / GitHub Copilot Chat 使用浏览器 OAuth 路径,不应使用 Copilot CLI 令牌设置进行调试:

  • invalid_grant — OAuth 授权码无效、已过期或已被使用:重新连接 VS Code MCP 服务器并再次授权。
  • invalid_target — OAuth 资源与此 MCP 服务器不匹配:使用 https://xmemo.dev/mcp 重新连接。
  • 403 insufficient_scope — 授权不包括 memory:read:批准所需的范围并重新连接。

更新与移除

GitHub Copilot 的维护流程:

  • 更新:更新配置后重新加载 VS Code 窗口。
  • 移除:从 mcp.json 中移除 xmemo 块并重新加载 VS Code 窗口。

VS Code / GitHub Copilot MCP 配置

配置文件: %APPDATA%\Code\User\mcp.json

OAuth client: keep only the hosted server URL in mcp.json; first tool call opens browser OAuth, so no XMEMO_KEY or Authorization header belongs in this file.

{
  "servers": {
    "XMemo": {
      "type": "http",
      "url": "https://xmemo.dev/mcp"
    }
  }
}

客户端就绪状态

  • Evidence required
  • Marketplace pending
  • See /product/docs#client-capability-matrix for the canonical OAuth, transport, auth, and evidence status.

来源: 客户端功能矩阵