关于 GitHub Repository MCP Server
GitHub Repository MCP Server 为 AI 模型提供 GitHub 仓库文件和结构作为上下文,并支持按扩展名、排除路径和文件数筛选。
主要功能
- 01获取仓库内容
- 02读取指定文件
- 03列出仓库结构
- 04按扩展名和路径筛选
- 05限制返回文件数
适用场景
- 01为 AI 模型提供仓库上下文
- 02查看仓库文件布局
- 03检索指定文件以供分析
MCP 相关
它向 MCP 客户端提供工具,用于获取 GitHub 仓库内容、单个文件和仓库结构。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
GitHub 仓库 MCP 服务
此 Model Context Protocol(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
你可以在 GitHub 开发者设置中创建个人访问令牌。
与 Cursor 搭配使用
按照以下步骤将此服务与 Cursor 搭配使用:
- 打开 Cursor 设置
- 搜索“MCP”
- 点击“Add a new MCP Server”
- 输入以下信息:
- 名称:github-repo-context(或任意名称)
- 类型:Command
- 命令:/path/to/your-local-repo-setup/gh.sh
- 点击“Save”
- 点击服务名称旁的切换开关,启用该服务
- 现在,你应该可以在项目中使用此服务
此服务通过 stdin/stdout 按照 MCP 协议进行通信。
可用工具
此服务提供以下工具:
-
get-repo-context:获取 GitHub 仓库中的所有文件,作为上下文使用
- 参数:
owner:GitHub 仓库所有者/组织名称repo:GitHub 仓库名称maxFiles(可选):要包含的最大文件数(默认值:50)fileExtensions(可选):要包含的文件扩展名(例如,['js', 'ts', 'md'])excludePaths(可选):要排除的路径(默认值:['node_modules', 'dist', 'build'])
- 参数:
-
get-file-content:获取 GitHub 仓库中指定文件的内容
- 参数:
owner:GitHub 仓库所有者/组织名称repo:GitHub 仓库名称path:仓库中文件的路径
- 参数:
-
get-repo-structure:获取 GitHub 仓库的结构
- 参数:
owner:GitHub 仓库所有者/组织名称repo:GitHub 仓库名称
- 参数:
示例
与支持 MCP 的 AI 模型集成后,你可以使用如下命令:
Get the structure of the repository tensorflow/tensorflow
随后,AI 会使用 get-repo-structure 工具获取并显示仓库结构。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。