shuakami_mcp_download

shuakami_mcp_download

by shuakami
An MCP-based tool enabling AI models to manage file downloads with multi-threading, task management, and real-time monitoring.

AI-Powered File Download Manager with MCP Integration

Overview

The AI-Powered File Download Manager is a tool designed to manage file downloads using the Model Context Protocol (MCP). It allows AI models to handle download tasks efficiently, eliminating the need for manual intervention or complex commands. This tool is particularly useful for automating downloads, monitoring progress, and managing tasks seamlessly.

Key Features

  • Multi-threaded Downloads: Supports up to 32 threads for faster downloads.
  • Resume Capability: Automatically resumes interrupted downloads.
  • Persistent Tasks: Downloads continue in the background even if the main application is closed.
  • Real-time Monitoring: Tracks download speed, progress, and estimated time remaining.
  • Task Management: Full control over download tasks, including pause, resume, cancel, and cleanup.
  • Error Handling: Automatically retries failed downloads to ensure success.

Tools and Technologies

  • Node.js: Used for the core application logic.
  • TypeScript: Ensures type safety and maintainability.
  • Python: Handles the MCP integration and bridging.
  • node-fetch: Manages the actual download processes.
  • Zod: Validates and checks request parameters.

Configuration

Environment Setup

  1. Install Node.js and npm:
  2. Download and install the LTS version from Node.js.
  3. Verify installation:
    shell node --version npm --version

  4. Install Git:

  5. Download and install Git from Git.

  6. Install Python 3.11 or higher:

  7. Download from Python.
  8. Ensure "Add Python to PATH" is selected during installation.
  9. Restart your computer after installation.

Installation Steps

  1. Clone the repository:
    shell git clone https://github.com/shuakami/mcp-download.git cd mcp-download npm install npm run build

  2. Build the project:
    shell npm run build

MCP Configuration

Windows

  1. Open or create the MCP configuration file: C:\Users\YourUsername\.cursor\mcp.json.
  2. Add the following configuration:
    json { "mcpServers": { "download-mcp": { "command": "python", "args": ["C:/Users/YourUsername/mcp-download/bridging_download_mcp.py"] } } }

macOS

  1. Open or create the MCP configuration file: /Users/YourUsername/.cursor/mcp.json.
  2. Add the following configuration:
    json { "mcpServers": { "download-mcp": { "command": "python3", "args": ["/Users/YourUsername/mcp-download/bridging_download_mcp.py"] } } }

Linux

  1. Open or create the MCP configuration file: /home/YourUsername/.cursor/mcp.json.
  2. Add the following configuration:
    json { "mcpServers": { "download-mcp": { "command": "python3", "args": ["/home/YourUsername/mcp-download/bridging_download_mcp.py"] } } }

Start the Service

Restart the Cursor editor to automatically start the MCP service.

Usage

Example Commands

  • Download a file:
    plaintext Download https://nodejs.org/dist/v18.19.0/node-v18.19.0-x64.msi to my downloads folder.
  • List all download tasks:
    plaintext Show all current download tasks.
  • Pause a download:
    plaintext Pause the current download task.
  • Resume a download:
    plaintext Resume download with ID abc123 using 8 threads.
  • Cancel a download:
    plaintext Cancel the ongoing download.
  • Clean up completed tasks:
    plaintext Clean up all completed download tasks.

Advanced Usage

  • Multi-threaded download:
    plaintext Download https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.19/bin/apache-tomcat-10.1.19.zip using 32 threads.
  • Blocking mode download:
    plaintext Download https://dl.google.com/android/repository/platform-tools-latest-windows.zip in blocking mode.
  • Persistent download:
    plaintext Start a persistent download of https://repo.anaconda.com/archive/Anaconda3-2023.09-0-Windows-x86_64.exe.

How It Works

The tool leverages the Model Context Protocol (MCP) to bridge AI models with file download services. It uses node-fetch for downloading and Zod for request validation. Key components include:

  • Multi-threaded Download Manager: Splits large files into segments for concurrent downloads.
  • Resume System: Tracks progress and resumes interrupted downloads.
  • Persistent Storage: Saves task states for recovery after restarts.
  • Real-time Monitoring: Calculates download speed and estimates remaining time.
  • Flexible Modes: Supports both blocking and non-blocking download modes.

License

This project is licensed under the ISC License.


If you find this project useful, consider giving it a ⭐️ on GitHub!

Features & Capabilities

Categories
mcp_server model_context_protocol typescript javascript python nodejs multi-thread download-manager file-downloader ai-powered

Implementation Details

Stats

0 Views
0 Likes
3 GitHub Stars

Repository Info

shuakami Organization

Similar Servers

continuedev_continue by continuedev
0
0
0