Download MCP
Enables AI models to manage file downloads with multi-threading, progress monitoring, and task control through standardized MCP interfaces.
README
Download MCP 工具
English Version (README-EN.md)
这是什么
这是一个基于 MCP (Model Context Protocol) 的下载工具,它能让 AI 模型通过标准化接口管理文件下载任务。
简单来说,它让 AI 助手能够执行各种下载操作,如启动多线程下载、监控下载进度、管理下载任务等,无需用户手动输入复杂的命令或切换到其他下载工具。
<details> <summary><b>支持的功能</b> (点击展开)</summary>
- 下载文件:自动创建多线程下载任务,支持断点续传
- 任务管理:列出、获取、暂停、恢复、取消和清理下载任务
- 多线程下载:支持多达32线程并行下载,显著提升下载速度
- 持久化功能:下载任务可在后台持续运行,即使关闭前台程序
- 状态监控:实时跟踪下载进度、速度和耗时
- 灵活配置:支持阻塞/非阻塞、持久化/非持久化等多种模式 </details>
<details> <summary><b>功能特点</b> (点击展开)</summary>
以下是 Download MCP 工具的一些核心特点:
- 极速多线程下载:最高支持32线程并行下载,大幅提升下载速度
- 智能断点续传:自动检测中断的下载并从断点处继续
- 持久化下载任务:即使关闭前台进程,下载任务也会在后台继续
- 实时状态监控:提供下载速度、进度、剩余时间等实时信息
- 灵活的工作模式:支持阻塞式或非阻塞式下载,根据需求选择
- 完整的任务管理:创建、暂停、恢复、取消和清理下载任务的全流程管理
- 智能错误处理:自动重试失败的下载,确保下载成功率
通过简单的自然语言指令,AI 可以帮助你完成上述所有操作,无需手动编写复杂命令或使用专门的下载软件。 </details>
快速上手
0. 环境准备
<details> <summary>如果你之前没有使用过 Node.js (点击展开)</summary>
-
安装 Node.js 和 npm
- 访问 Node.js 官网
- 下载并安装 LTS(长期支持)版本
- 安装时选择默认选项即可,安装包会同时安装 Node.js 和 npm
-
验证安装
- 安装完成后,打开命令提示符(CMD)或 PowerShell
- 输入以下命令确认安装成功:
node --version npm --version - 如果显示版本号,则表示安装成功
-
安装 Git(如果尚未安装)
- 访问 Git 官网
- 下载并安装 Git
- 安装时使用默认选项即可
-
安装 Python 3.11 或更高版本(必需)
- 访问 Python 官网
- 下载并安装 Python 3.11 或更高版本
- 重要:安装时必须勾选"Add Python to PATH"选项
- 安装完成后重启电脑,确保环境变量生效 </details>
1. 克隆并安装
git clone https://github.com/shuakami/mcp-download.git
cd mcp-download
npm install
npm run build
2. 构建项目
npm run build
3. 添加到 Cursor MCP 配置
根据你的操作系统,按照以下步骤配置 MCP:
<details> <summary><b>Windows 配置</b> (点击展开)</summary>
-
在 Cursor 中,打开或创建 MCP 配置文件:
C:\\Users\\你的用户名\\.cursor\\mcp.json- 注意:请将
你的用户名替换为你的 Windows 用户名
- 注意:请将
-
添加或修改配置如下:
{
"mcpServers": {
"download-mcp": {
"command": "python",
"args": [
"C:/Users/你的用户名/mcp-download/bridging_download_mcp.py"
]
}
}
}
⚠️ 请注意:
- 将
你的用户名替换为你的 Windows 用户名- 确保路径正确指向你克隆或解压的项目目录
- 路径应该反映你将项目文件放置的实际位置
- 不要删除克隆或解压的文件夹,这会导致 MCP 无法正常工作 </details>
<details> <summary><b>macOS 配置</b> (点击展开)</summary>
-
在 Cursor 中,打开或创建 MCP 配置文件:
/Users/你的用户名/.cursor/mcp.json- 注意:请将
你的用户名替换为你的 macOS 用户名
- 注意:请将
-
添加或修改配置如下:
{
"mcpServers": {
"download-mcp": {
"command": "python3",
"args": [
"/Users/你的用户名/mcp-download/bridging_download_mcp.py"
]
}
}
}
⚠️ 请注意:
- 将
你的用户名替换为你的 macOS 用户名- 确保路径正确指向你克隆或解压的项目目录
- 路径应该反映你将项目文件放置的实际位置
- 不要删除克隆或解压的文件夹,这会导致 MCP 无法正常工作 </details>
<details> <summary><b>Linux 配置</b> (点击展开)</summary>
-
在 Cursor 中,打开或创建 MCP 配置文件:
/home/你的用户名/.cursor/mcp.json- 注意:请将
你的用户名替换为你的 Linux 用户名
- 注意:请将
-
添加或修改配置如下:
{
"mcpServers": {
"download-mcp": {
"command": "python3",
"args": [
"/home/你的用户名/mcp-download/bridging_download_mcp.py"
]
}
}
}
⚠️ 请注意:
- 将
你的用户名替换为你的 Linux 用户名- 确保路径正确指向你克隆或解压的项目目录
- 路径应该反映你将项目文件放置的实际位置
- 不要删除克隆或解压的文件夹,这会导致 MCP 无法正常工作 </details>
4. 启动服务
配置好之后,重启 Cursor 编辑器,它会自动启动 MCP 服务。然后你就可以开始使用了。
<details> <summary>使用示例 (点击展开)</summary>
你可以要求 AI 执行以下操作:
- "下载 https://nodejs.org/dist/v18.19.0/node-v18.19.0-x64.msi 到我的下载文件夹"
- "显示当前的所有下载任务"
- "查看下载ID为abc123的下载状态"
- "暂停当前的下载任务"
- "恢复ID为abc123的下载,使用8个线程"
- "取消正在进行的下载"
- "清理所有已完成的下载任务"
高级用法:
- "使用32线程下载 https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.19/bin/apache-tomcat-10.1.19.zip"
- "以阻塞模式下载 https://dl.google.com/android/repository/platform-tools-latest-windows.zip"(等待下载完成后再继续)
- "启动持久化下载 https://repo.anaconda.com/archive/Anaconda3-2023.09-0-Windows-x86_64.exe"(即使关闭前台程序也会继续下载) </details>
工作原理
<details> <summary>技术实现细节 (点击展开)</summary>
本工具基于 MCP (Model Context Protocol) 标准实现,作为 AI 模型与文件下载服务之间的桥梁。它使用 node-fetch 作为底层下载客户端,并通过 Zod 进行请求验证和类型检查。
主要技术组件包括:
- 多线程下载管理器:将大文件分割为多个段,并发下载,然后合并
- 断点续传系统:跟踪每个段的下载进度,支持中断后恢复
- 持久化存储:保存下载任务状态,即使程序重启也能恢复
- 实时监控:计算下载速度、预估剩余时间等关键指标
- 灵活的工作模式:支持阻塞/非阻塞、持久化/非持久化模式
每个下载操作都被封装为标准化的 MCP 工具,接收结构化参数并返回格式化结果。所有下载任务都作为独立进程管理,确保即使前台程序关闭,下载也能安全继续。
这种设计使 AI 模型能够清晰地理解和处理下载状态,并以更自然的方式与用户沟通下载进度、速度和其他关键信息。 </details>
许可证
ISC
如果这个项目对你有帮助,欢迎给个 Star ⭐️ (。♥‿♥。)
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。