GitHub MCP(模型上下文协议)服务器提供了一系列与 GitHub 平台交互的功能,可用于代码搜索、问题管理、用户信息查询以及工作流程操作,极大地提升了开发者在 GitHub 上的工作效率。
若要使用 GitHub MCP 服务器,需先创建 GitHub 个人访问令牌,再根据自身需求选择 Docker 或 NPX 进行配置。详细步骤如下:
创建一个 GitHub 个人访问令牌,以获取对仓库的完整控制权限:
repo 权限的令牌(如果仅处理公开仓库,则可以选择 public_repo 权限)。在 ~/.cursor/mcp_config.json 或 ~/.windsurf/mcp_config.json 中添加以下配置:
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"mcp/github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": ""
}
}
}
}
{
"mcpServers": {
"github": {
"command": "node",
"args": [
"-e",
"const mcp = require('mcp'); mcp.start();"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": ""
}
}
}
}
language:javascript:根据编程语言筛选。repo:owner/name:在指定仓库中搜索。path:app/src:在指定路径下搜索。extension:js:根据文件扩展名筛选。q: "import express" language:typescript path:src/is:issue 或 is:pr:根据类型筛选(问题或拉取请求)。is:open 或 is:closed:根据状态筛选。label:bug:根据标签筛选。author:username:根据作者筛选。q: "memory leak" is:issue is:open label:bugtype:user 或 type:org:根据账户类型筛选。followers:>1000:根据关注者数量筛选。location:London:根据地理位置筛选。q: "fullstack developer" location:London followers:>100有关详细搜索语法,请参考GitHub 的搜索文档。
{
"标题": "新功能请求",
"描述": "请实现新功能...",
"状态": "已打开"
}
{
"仓库所有者": "username",
"仓库名称": "repo-name",
"分支": "main",
"commit_message": "触发工作流程"
}
docker build -t mcp/github .
以下是运行 GitHub MCP 服务器所需的环境变量:
GITHUB_PERSONAL_ACCESS_TOKEN:必须设置为您的 GitHub 个人访问令牌。PORT (可选):设置服务监听的端口,默认为 3000。本项目遵循 MIT 许可证,具体内容请参考 LICENSE 文件。