#version #command #binary #manager #mcvcli

app mcvcli

A command line interface for managing Minecraft servers

22 stable releases

Uses new Rust 2024

new 2.3.4 Apr 16, 2025
2.3.3 Apr 12, 2025
2.2.2 Mar 28, 2025
2.1.5 Feb 23, 2025

#34 in Compression

Download history 533/week @ 2025-02-07 339/week @ 2025-02-14 135/week @ 2025-02-21 34/week @ 2025-02-28 98/week @ 2025-03-07 33/week @ 2025-03-14 336/week @ 2025-03-28 607/week @ 2025-04-04 360/week @ 2025-04-11

1,303 downloads per month

MIT license

200KB
5.5K SLoC

mcvcli - Minecraft Server Version Manager

mcvcli is a command-line tool for managing Minecraft server versions. It allows you to easily download, install, and switch between different versions of the Minecraft server software.

Features

  • Download and install Minecraft server versions with a single command
  • List available server versions
  • Switch between installed server versions
  • Automatically handle java installation

Installation

Using Cargo

  1. Make sure you have Cargo installed.
  2. Install mcvcli globally by running the following command:
cargo install mcvcli

Using a Pre-built Binary

  1. Download the latest release from the releases page.
  2. Extract the downloaded archive.
  3. Add the extracted directory to your PATH (or put it in a folder that is already in PATH).
  4. Run mcvcli in your terminal to verify that the installation was successful.
# Basic Example for Linux
wget https://github.com/mcjars/mcvcli/releases/latest/download/mcvcli-x86_64-linux.tar.xz
tar -xf mcvcli-x86_64-linux.tar.xz -C .
export PATH=$PATH:$(pwd)/mcvcli-x86_64-linux

mcvcli --version
# Basic Example for Windows

Invoke-WebRequest -Uri "https://github.com/mcjars/mcvcli/releases/latest/download/mcvcli-x86_64-windows.zip" -OutFile "mcvcli-x86_64-windows.zip"
Expand-Archive -Path "mcvcli-x86_64-windows.zip" -DestinationPath "." -Force
$env:Path += ";$(Get-Location)\mcvcli-x86_64-windows"

mcvcli --version

Usage

Downloading and Installing a Server Version

To setup your Minecraft server version, use the init command

mcvcli init ./server

cd server

mcvcli version # view installed version, auto updates with your jar
mcvcli update # update build or minecraft version of your jar (only newer)
mcvcli install # force install any other version
mcvcli lookup {user} # lookup a user on your server or globally
mcvcli start # start the server
mcvcli config # manage mcvcli config file

mcvcli java list # list installed java versions
mcvcli java install {version} # install a specific java version
mcvcli java use {version} # switch to another java version
mcvcli java delete {version} # remove a java version

mcvcli profile list # list server profiles
mcvcli profile create {name} # create a new profile
mcvcli profile use {name} # switch to another profile
mcvcli profile delete {name} # nuke a profile from existance

mcvcli backup list # list created server backups
mcvcli backup create {name} # create a new server backup
mcvcli backup delete {name} # delete a server backup
mcvcli backup restore {name} # restore a previously created server backup

mcvcli mods list # list installed mods
mcvcli mods delete # delete selected mods

mcvcli start --detached # start the server in the background (no output)
mcvcli attach # attach to the server console
mcvcli stop # stop the server
mcvcli status # check the server status

mcvcli upgrade # upgrade the mcvcli binary

Developing

To Develop on this tool, you need to install all required dependencies

git clone https://github.com/mcjars/mcvcli.git mcjars-mcvcli

cd mcjars-mcvcli

# make sure to have cargo installed already
cargo build

# install binary globally
cargo install --path .
mcvcli --version

# run the binary temporarily
cargo run -- --version

Note

NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.

Dependencies

~23–55MB
~872K SLoC