README
🚀 GitHub URL MCP Server
GitHub URL MCP Server 是一个基于 MCP(模型上下文协议)的服务器,具备验证和解析功能,可用于处理 GitHub URL。它提供了一系列工具,能在 GitHub 仓库信息和 URL 之间进行转换,并通过智能验证区分公共仓库、私有仓库和不存在的仓库。
🚀 快速开始
环境搭建
npm install
启动服务器
npm run start
开启带 CLI 交互的开发模式
npm run dev
测试
npm run test
代码检查与格式化
npm run lint
npm run format
构建
npm run build
✨ 主要特性
- URL 构建:将所有者/仓库名称对转换为格式正确的 GitHub URL。
- URL 解析:从 GitHub URL 中提取所有者、仓库和路径信息。
- 智能仓库验证:区分公共、私有和不存在的仓库。
- 私有仓库检测:识别存在但为私有的仓库。
- 全面状态报告:为仓库可访问性提供清晰的状态指示。
- 错误处理:为无效输入提供详细的错误消息。
- 无需身份验证:无需 GitHub API 令牌即可工作。
- 超时保护:网络请求内置超时机制。
📚 详细文档
工具介绍
github/build_url
该工具可将 GitHub 所有者和仓库名称转换为经过验证的、格式正确的 GitHub URL。 参数:
owner(字符串):GitHub 用户名或组织名称。repo(字符串):仓库名称。 示例:
{
"owner": "microsoft",
"repo": "vscode"
}
返回结果:
https://github.com/microsoft/vscode(公共仓库)https://github.com/owner/repo+ 🔒 提示(私有仓库)https://github.com/owner/repo+ ⚠️ 警告(不存在的仓库)https://github.com/owner/repo+ ❌ 错误(验证错误)
github/parse_url
该工具可解析 GitHub URL,提取所有者、仓库名称和额外的路径信息,并进行验证。 参数:
url(字符串):要解析的 GitHub URL。 示例:
{
"url": "https://github.com/microsoft/vscode/tree/main/src"
}
返回结果:
{
"owner": "microsoft",
"repo": "vscode",
"url": "https://github.com/microsoft/vscode",
"additionalPath": "tree/main/src",
"status": "public",
"accessible": true
}
状态值:
"public":仓库可公开访问。"private":仓库存在但为私有。"not_found":仓库不存在。"error":发生验证错误。 额外字段:accessible:布尔值,指示仓库是否可公开访问。note:私有仓库的信息提示。warning:不存在仓库的警告消息。error:验证失败的错误消息。
🔧 技术细节
背景
此工具的创建是为了解决大语言模型(LLMs)在处理与 GitHub 相关任务时经常遇到的问题。许多 LLMs 难以根据仓库信息构建正确的 GitHub URL,难以解析 GitHub URL 以提取有意义的组件,或者不知道何时使用可用的 MCP 工具进行与 GitHub 相关的请求。该服务器提供了专门的工具,使这些操作对于 AI 应用程序来说更加可靠和一致。
注意:这个问题可能特定于我常用的 LLMs,但提供专用工具可确保不同 AI 系统的行为一致。或者,也许我应该悄悄为 Claude Code 的最高套餐投入一大笔钱。
Scan to join WeChat group