返回市场
高亮GitHub MCP服务器

高亮GitHub MCP服务器

作者:highlight-ing2 星标更新:2025-02-01

项目介绍

GitHub 集成

GitHub MCP 服务器提供了从拉取请求中提取差异的功能。

可用工具

get_diff_pr

从 GitHub 拉取请求中检索差异内容。

参数

  • owner: 仓库所有者/组织名称
  • repo: 仓库名称
  • pr_number: 拉取请求编号

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

  • 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 限制被截断
  • 令牌需要具备适当的仓库访问权限