GitHub Release文件管理工具

基于MCP协议的工具,用于将指定目录打包为ZIP文件并上传至GitHub Release,或从Release下载文件,简化开发环境间的测试资源共享流程。

  • by AMingDrift
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 AMingDrift/mcp-shipit

使用说明

mcp shipit

英语| 中文

mcp shipit是一家 模型上下文协议 基于MCP的工具,可以将指定的目录打包成ZIP文件并上传到GitHub Release。

为什么是这个工具?

创建此工具是为了解决开发工作流程中的一个常见问题:在多台开发机器之间共享测试资源(如模拟图像、视频和其他大型二进制文件)。

通常,开发人员需要共享这些测试资源,但不想将它们提交到git存储库,因为它们会使存储库的大小膨胀。上传到云驱动器等传统解决方案需要手动重复操作——下载、提取、移动到正确的位置等。

使用mcp-shipit,您只需告诉您的AI编程助手(如VS Code Copilot、统一灵马)“将模拟资源目录上传到GitHub Release”或“从GitHub Release下载测试资产”,该工具就会自动处理整个过程。这使得在多个开发环境之间无缝共享测试资源成为可能。

主要特点

  • 📦 将项目目录打包成ZIP文件
  • ☁️ 自动上传到GitHub发布
  • 🏷️ 支持创建或重用发布标签
  • 🔌 通过MCP协议集成
  • ⬇️ 支持从GitHub Release下载和提取
  • 🌐 对GitHub API访问的代理支持

整合

mcp-shipit是一个不能直接从命令行调用的mcp工具。它需要集成到支持MCP协议的AI编程工具中,如VS Code Copilot、统一灵马、Trae等。

快速开始

1.先决条件

  • Node.js v20+
  • GitHub个人访问令牌(指南)

2、GitHub API权限说明

mcp-shipit工具需要使用GitHub API上传和下载发布文件。为此,您需要创建个人访问令牌(PAT)并授予适当的权限。

在以下位置创建新令牌时 https://github.com/settings/tokens/new,根据您的用例选择以下权限:

上传发布文件

需要 repo 权限(完全控制私有和公共存储库),其中包括:

  • public_repo (访问公共存储库)
  • 允许创建发布和上传发布资产

下载发布文件

  • 公共存储库: public_repo 许可
  • 私有存储库: repo 许可

推荐配置

用例 推荐权限
上传/管理发布 ✅ repo
下载发布文件 ✅ repo

📌 为确保功能正常,建议直接选择 repo 权限,支持上传和下载操作

3.安装

npm install -g @amingdrift/mcp-shipit

4.集成配置

在MCP支持的工具、配置指南中配置服务:

VS代码副本配置示例:

{
    "servers": {
        "mcp-shipit": {
            "type": "stdio",
            "command": "npx",
            "args": ["@amingdrift/mcp-shipit"],
            "env": {
                "SHIPIT_GITHUB_TOKEN": "your-token",
                "SHIPIT_GITHUB_OWNER": "your-owner",
                "SHIPIT_GITHUB_REPO": "your-repo"
            }
        }
    }
}

环境变量:

  • SHIPIT_GITHUB_TOKEN (必填):GitHub访问令牌
  • SHIPIT_GITHUB_OWNER (必填):存储库所有者
  • SHIPIT_GITHUB_REPO (必填):存储库名称
  • SHIPIT_GITHUB_TAG (可选):释放标记名称,默认值 mcp-auto-upload
  • SHIPIT_PROXY (可选):代理地址

环境变量可以在 .env 项目根目录中的文件,其优先级高于配置文件。

5.用法(以代理模式下的VS Code Copilot为例)

上传目录:

Please use the mcp-shipit tool to package [relative directory path] and upload it to GitHub Release

下载文件:

Please use the mcp-shipit tool to download [filename.zip] from GitHub release to [target directory] [merge|overwrite]

备注

  • 确保GitHub Token具有存储库写入权限
  • 上传目录必须存在且可访问
  • 下载时,同名文件将被覆盖,原始目录将备份为 _bak
  • 当网络速度较慢时,可以配置代理
  • 仅使用VS Code Copilot、统一灵马和Trae AI编程工具进行了测试。用户可以尝试其他工具,如Claude Desktop和Cursor
  • 必须通过Agent/Builder与MCP一起使用,以创建自动化工作流

许可证

国际学生委员会