GitHub存储库MCP服务器
此模型上下文协议(MCP)服务器允许AI模型作为上下文访问GitHub存储库内容。它提供了获取文件内容、存储库结构和整个存储库的工具,以用作AI交互中的上下文。
特性
- 将整个存储库内容作为上下文获取
- 从存储库获取特定文件内容
- 获取存储库结构(文件列表)
- 按扩展名筛选文件
- 排除特定路径
- 限制返回的文件数量
安装
# clone the repository
git clone https://github.com/shanksxz/github-mcp.git
cd github-mcp
# install dependencies
npm install
# build the project
npm run build用法
设置GitHub身份验证
虽然服务器可以在没有身份验证的情况下使用公共存储库,但GitHub API对未经身份验证的请求有严格的速率限制(每小时60个请求)。要将此限制增加到5000个请求/小时,请设置 GITHUB_TOKEN 环境变量:
# create a file called gh.sh and add the following line:
export GITHUB_TOKEN=your_github_personal_access_token
# make the file executable
chmod +x gh.sh
# run the file
./gh.sh您可以在您的 .
与光标一起使用
要将此服务器与Cursor一起使用,请执行以下步骤:
- 打开光标设置
- 搜索“MCP”
- 点击“添加新的MCP服务器”
- 输入以下信息:
- 名称:github仓库上下文(或您想要的任何名称) - 类型:命令 - 命令:/path/to/本地仓库设置/gh.sh
- 点击“保存”
- 通过单击服务器名称旁边的切换来启用服务器
- 现在,您应该能够在项目中使用服务器
服务器按照MCP协议通过stdin/stdout进行通信。
可用工具
服务器提供以下工具:
- 获取回购上下文:从GitHub存储库获取所有文件用作上下文
- 参数: - owner:GitHub存储库所有者/组织名称 - repo:GitHub存储库名称 - maxFiles (可选):要包含的最大文件数(默认值:50) - fileExtensions (可选):要包含的文件扩展名(例如\['js'、'ts'、'md'\]) - excludePaths (可选):要排除的路径(默认值:\['node_modules','dist','build'\])
- 获取文件内容:从GitHub存储库获取特定文件的内容
- 参数: - owner:GitHub存储库所有者/组织名称 - repo:GitHub存储库名称 - path:存储库中文件的路径
- 获取回购结构:获取GitHub存储库的结构
- 参数: - owner:GitHub存储库所有者/组织名称 - repo:GitHub存储库名称
示例
当与支持MCP的AI模型集成时,您可以使用以下命令:
Get the structure of the repository tensorflow/tensorflow然后,AI将使用 get-repo-structure 用于获取和显示存储库结构的工具。

