GitHub 与 MCP 的天然契合
代码仓库是软件工程的心脏。传统的 GitHub Bot 往往依赖机械的规则匹配(如根据文件路径打标),而结合了 MCP 的大模型能够真正“读懂”代码改动与 Issue 描述的语义。
1. 配置 GitHub MCP Server
生成拥有 repo 权限的 GitHub Personal Access Token (PAT),并配置 MCP:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
2. 自动化 PR 审查提示词设计
在 AI 助手或自动化脚本中输入如下指令:
你是一位资深安全架构师。请调用 github.get_pull_request 获取 PR #42 的 diff 内容。
重点检查:
1. 是否有明文密钥(API Key / Token)泄漏;
2. 是否有 SQL 拼接漏洞或越权访问风险;
3. 单元测试覆盖率是否满足新增逻辑的要求。
如果发现严重缺陷,调用 github.create_issue_comment 并在对应代码行发表审查建议。
3. 安全合规提示
- 权限最小化:建议为 MCP Bot 单独分配 GitHub App 或 Fine-grained PAT,仅开放目标仓库的只读权限或受限写入权限。
- 防止自动合并:涉及
merge_pull_request等高危写操作,务必保留人工二次确认开关。