GitHub差异提取器

@highlight-ing/highlight-github-mcp
0 Stars 327 次浏览 highlight-ing 更新于 2026-08-23

从GitHub拉取请求中提取差异,允许用户检索和分析仓库中分支之间的更改。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

GitHub 集成

GitHub MCP 服务器提供了从 Pull Request 中提取差异的功能。

可用工具

get_diff_pr

从 GitHub Pull Request 中检索差异内容。

参数

  • owner:仓库所有者/组织名称
  • repo:仓库名称
  • pr_number:Pull Request 编号

返回:包含以下内容的对象:

  • content:包含 PR 差异的字符串

认证

必需:将 GitHub 个人访问令牌设置为环境变量:

export GITHUB_TOKEN=<your-github-token>

对于私有仓库,令牌至少需要具有 repo 范围的权限。对于公共仓库,具有 public_repo 范围的令牌就足够了。

错误处理

服务器实现了标准的错误处理:

  • 缺失/无效的令牌返回 ErrorCode.AuthenticationError
  • 无效的仓库详情返回 ErrorCode.InvalidParams
  • 不存在的 PR 返回 ErrorCode.NotFound
  • 获取差异失败时返回格式化的错误消息
  • 在接收到 SIGINT 信号时优雅关闭

技术细节

  • 使用 Highlight AI MCP SDK 构建
  • 使用 GitHub REST API v3
  • 通过 Zod 进行输入验证
  • 作为基于 stdio 的 MCP 服务器运行
  • 支持 Node.js >=18.0.0

限制

  • 根据 GitHub API 限制适用速率限制
  • 大型差异可能根据 GitHub API 限制被截断
  • 令牌需要适当的仓库访问权限

相关 MCP 服务