Overview
mcserver-creator is a command-line script that provisions a new Paper Minecraft server from a template directory. It prompts for a server name and Minecraft version, downloads the matching Paper server jar, and fetches any selected plugins from Modrinth, assembling a ready-to-run server folder.
Features
- Interactive prompts (via
questionary) for server name, Minecraft version, and plugin selection - Fetches the list of available Minecraft versions and the latest Paper build for the chosen version from the PaperMC Fill API, defaulting to stable builds with an
--unstableflag to allow experimental channels - Reads a default plugin list from
_template/plugins.txtand lets the user toggle which ones to install, plus accepts additional Modrinth slugs ad hoc - Resolves and downloads the correct Modrinth plugin version for the target Minecraft version and Paper/Bukkit/Spigot loaders, falling back to the latest compatible version if no exact match exists
- Streams downloads with a
richprogress bar showing transfer speed and time remaining - Copies a
_templatedirectory (server.properties, eula.txt, start scripts, server icon) into the new server folder and reports any plugins that failed to download
How it works
The script is a single uv run Python file with inline dependency metadata (httpx, rich, questionary, packaging). It talks to two APIs: PaperMC’s Fill API for server jar builds, and the Modrinth API for plugin versions, matching plugins by Modrinth slug and preferring the primary file in each version’s file list.
