A Python script to download mods from Modrinth modpacks with support for downloading all mods or only server-side compatible mods.
- Download all mods from a Modrinth modpack
- Server-only mode: Download only server-compatible mods
- Interactive version selection
- Customizable output directory
- Overwrite protection with user confirmation
- Progress tracking and download summary
- Install Python 3.6 or higher
- Install dependencies:
pip install -r requirements.txtDownload all mods from a modpack:
python download_mods.py t1tOiUHZDownload only server-side compatible mods:
python download_mods.py t1tOiUHZ --mode serverSpecify a custom output directory:
python download_mods.py t1tOiUHZ --output ./server-modspython download_mods.py t1tOiUHZ --mode server --output ./my-server-modsmodpack_id(required): The Modrinth modpack ID (e.g., t1tOiUHZ)-m, --mode: Download modeall(default): Download all modsserver: Download only server-compatible mods
-o, --output: Output directory for downloaded mods (default:mods)
- Fetch Versions: The script fetches all available versions of the modpack from Modrinth's API
- Version Selection: You interactively select which version to download
- Download Modpack: The script downloads the
.mrpackfile and extracts the mod list - Filter Mods: Based on the mode, it filters which mods to download
allmode: Downloads all modsservermode: Only downloads mods with server support (required or optional)
- Download Mods: Downloads each mod file, asking for confirmation if files already exist
- Summary: Displays a summary of downloaded and skipped mods
Modrinth Modpack Downloader
Modpack ID: t1tOiUHZ
Available versions:
------------------------------------------------------------
1. 1.20.1-0.1.0 - My Modpack v0.1.0
2. 1.20.1-0.0.9 - My Modpack v0.0.9
------------------------------------------------------------
Select version (1-2): 1
Downloading modpack from: https://...
Extracting modpack index...
Downloading mods to: C:\Users\Target\Documents\Modrinth-Server-Mod-Downloader\mods
Mode: server
------------------------------------------------------------
[1/50] Downloading: fabric-api-0.92.0.jar... ✓
[2/50] Downloading: sodium-mc1.20.1-0.5.5.jar... ✓
...
------------------------------------------------------------
Download Summary:
Total mods in modpack: 50
Successfully downloaded: 35
Skipped: 15
Done!
The script handles various error cases:
- Invalid modpack IDs
- Network errors
- Missing or corrupted files
- User interruption (Ctrl+C)
This project is provided as-is for educational and personal use.