关于 MCP GitHub Reader
MCP GitHub Reader 让 LLM 客户端通过 GitHub API 检查公开仓库,无需在本地克隆。它整合仓库分析、筛选文件访问和文件名搜索。
主要功能
- 01分析仓库统计数据和语言
- 02获取文件或仓库内容
- 03用 glob 或正则表达式筛选文件
- 04搜索仓库文件名
- 05使用现成的分析提示词
适用场景
- 01查看公开仓库的结构
- 02不克隆仓库而读取指定文件
- 03查找符合查询条件的文件名
MCP 相关
向兼容 MCP 的客户端提供四种 GitHub 仓库工具和提示词模板。它仅支持公开仓库,不提供私有仓库认证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| owner | string | 是 | 仓库所有者(例如,"skydeckai") |
| repo | string | 是 | 仓库名称(例如,"mcp-server-aidd") |
| path | string | 是 | 仓库内文件的路径(例如,"README.md") |
| branch | string | 否 | 可选:分支名称(默认为默认分支) |
详细介绍
MCP GitHub Reader
一个轻量级的模型上下文协议(MCP)服务,可将 GitHub 仓库引入大模型的上下文中。
功能
- 基于 API:无需在本地克隆仓库,可直接使用 GitHub API
- 仓库分析:获取任意 GitHub 仓库的概览和统计信息
- 文件访问:检索单个文件的内容或整个仓库的文件结构
- 智能筛选:使用 glob 和正则表达式模式包含或排除文件
- 启用缓存:通过智能缓存和优化的请求模式,避免触及 GitHub API 限制
- 搜索功能:查找仓库中与特定模式匹配的文件
- 兼容 MCP:可与任何支持模型上下文协议的 LLM 客户端配合使用
- 提示词模板:提供适用于常见仓库分析任务的现成提示词模板
安装
全局安装(推荐用于 CLI 使用)
npm install -g mcp-github-reader
本地安装
npm install mcp-github-reader
使用方法
作为独立服务运行
# If installed globally
mcp-github-reader
# If installed locally
npx mcp-github-reader
与 Claude 集成
使用 npm 安装:
将以下内容添加到 Claude Desktop 工具配置中:
"github-reader": {
"runtime": "node",
"command": "npx",
"args": [
"-y",
"mcp-github-reader"
]
}
本地安装:
"github-reader-test": {
"command": "node",
"args": [
"/path/to/your/repo/src/mcp-github-reader.js"
]
}
将 /path/to/your/repo 替换为实际的仓库路径。
可用工具
此 MCP 服务提供四个强大的工具,用于与 GitHub 仓库交互:
1. get_individual_file_content
从 GitHub 仓库中检索指定文件的内容。
参数:
owner:仓库所有者(例如,“skydeckai”)repo:仓库名称(例如,“mcp-server-aidd”)path:仓库内文件的路径(例如,“README.md”)branch(可选):分支名称(默认为默认分支)
2. get_entire_repo_contents
获取整个仓库的内容,并使用智能筛选选项。
参数:
owner:仓库所有者(例如,“skydeckai”)repo:仓库名称(例如,“mcp-server-aidd”)exclude_patterns(可选):要排除的模式(例如,[".test.js", "node_modules/"])include_patterns(可选):仅包含与这些模式匹配的文件(例如,[".js", ".json", "*.md"])file_size_limit(可选):响应的最大总大小(例如,“5m”)individual_file_size_limit(可选):跳过大于此大小的文件(例如,“500k”)max_files(可选):要包含的文件数量上限(默认值:50)include_contents(可选):是否包含文件内容,还是仅列出文件(默认值:true)use_regex(可选):将排除/包含模式视为正则表达式
3. analyzeRepository
分析仓库并提供统计信息和语言分布。
参数:
repository:采用 owner/repo 格式的仓库名称(例如,“skydeckai/mcp-server-aidd”)includeFiles(可选):在分析中包含文件列表(默认值:false)
4. searchRepository
搜索仓库中与特定模式匹配的文件。
参数:
repository:采用 owner/repo 格式的仓库名称(例如,“skydeckai/mcp-server-aidd”)query:要在文件名中搜索的文本(例如,“function”)path(可选):将搜索范围限定到特定路径(例如,“src”)
可用提示词
此服务还包含实用的提示词模板,帮助 LLM 与仓库交互:
repositoryOverview:分析仓库的用途和结构codeExplanation:解释指定文件中的代码codeSearch:搜索仓库中的模式fileContent:获取指定文件的内容repositoryInfo:获取仓库信息repositoryStructure:查看仓库文件结构branchList:列出仓库分支
示例
检索单个文件的内容
{
"name": "get_individual_file_content",
"parameters": {
"owner": "skydeckai",
"repo": "mcp-server-aidd",
"path": "README.md"
}
}
使用筛选条件获取仓库内容
{
"name": "get_entire_repo_contents",
"parameters": {
"owner": "skydeckai",
"repo": "mcp-server-aidd",
"include_patterns": ["*.js", "*.json", "*.md"],
"exclude_patterns": ["*.test.js", "node_modules/*"],
"max_files": 30
}
}
分析仓库
{
"name": "analyzeRepository",
"parameters": {
"repository": "skydeckai/mcp-server-aidd",
"includeFiles": true
}
}
限制
- 目前仅适用于公开的 GitHub 仓库
- 不支持私有仓库或身份验证
- 受 GitHub API 速率限制(未验证请求每小时 60 次)
许可证
Apache License 2.0。详情请参阅 LICENSE 文件。
版权所有 © 2025 SkyDeck AI Inc.
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。