README
🚀 GitHub 仓库 MCP 服务器
该 Model Context Protocol (MCP) 服务器允许 AI 模型访问 GitHub 仓库内容作为上下文。它提供了获取文件内容、仓库结构以及整个仓库的工具,以便在 AI 交互中用作上下文。
🚀 快速开始
该 MCP 服务器可让 AI 模型将 GitHub 仓库内容作为上下文使用,提供了获取文件内容、仓库结构等工具,方便在 AI 交互中使用。
✨ 主要特性
- 获取整个仓库的内容作为上下文
- 获取特定文件内容从一个仓库
- 获取仓库结构(文件列表)
- 根据扩展名筛选文件
- 排除特定路径
- 限制返回的文件数量
📦 安装指南
# 克隆仓库
git clone https://github.com/shanksxz/github-mcp.git
cd github-mcp
# 安装依赖项
npm install
# 构建项目
npm run build
💻 使用示例
基础用法
设置 GitHub 认证
尽管服务器可以在没有身份验证的情况下与公共仓库一起使用,但未认证请求的 GitHub API 有严格的速率限制(每小时 60 次)。为了将速率限制提高到每小时 5000 次,请设置 GITHUB_TOKEN 环境变量:
# 创建一个名为 gh.sh 的文件并添加以下内容:
export GITHUB_TOKEN=your_github_personal_access_token
# 设置文件可执行权限
chmod +x gh.sh
# 运行文件
./gh.sh
你可以在 GitHub Developer Settings 中创建一个个人访问令牌。
与 Cursor 使用
要将此服务器与 Cursor 结合使用,请按照以下步骤操作:
- 打开 Cursor 设置
- 搜索“MCP”
- 点击“添加新的 MCP 服务器”
- 填写以下信息:
- 名称:github-repo-context(或任何你想要的名称)
- 类型:命令
- 命令:/path/to/your-local-repo-setup/gh.sh
- 点击“保存”
- 通过点击服务器名称旁边的切换开关来启用服务器
- 现在你应该能够在此项目中使用该服务器
服务器通过 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 模型结合使用时,你可以执行类似以下命令:
获取 tensorflow/tensorflow 仓库的结构
AI 将会使用 get-repo-structure 工具来获取并显示仓库结构。
Scan to join WeChat group