Introduction
mc is a command line tool to manage and run Minecraft instances.
An instance is described by a single manifest file, mc.toml. From that one
file, mc run takes care of everything needed to bring the instance up:
- installs a Java runtime
- installs Minecraft for the configured version
- installs a mod loader, when one is configured
- downloads mods and resolves their dependencies into a lockfile
- writes the configuration files Minecraft expects
- launches the instance and supervises it until it stops
- takes scheduled world backups to local storage or S3
If you have used a package manager, the workflow will feel familiar: a declarative manifest, a generated lockfile, and a small set of commands that operate on them.
$ mc init myserver --eula
$ cd myserver
$ mc run
Sections
Install mc and start your first instance.
Task-oriented guides: managing mods, configuring backups, and deploying an instance as a systemd service.
The mc.toml manifest format, the environment variables mc reads, and the
on-disk layout of an instance.
Detailed documentation for every mc command.
Getting Started
To get started with mc:
- Installation — install the
mcbinary on your system. - First Steps with mc — create an instance and run it.
Installation
Pre-built binaries
Every release publishes pre-built binaries on the GitHub releases page for:
- Linux (
x86_64,aarch64) - macOS (
x86_64,aarch64) - Windows (
x86_64)
Download the archive for your platform, extract it, and place the mc binary
somewhere on your PATH:
$ tar -xzf mc-linux-x86_64.tar.gz
$ install -m 755 mc /usr/local/bin/mc
$ mc --version
Building from source
mc is written in Rust and builds with a recent stable toolchain:
$ git clone https://github.com/afrigon/mc
$ cd mc
$ cargo build --release
The binary is produced at target/release/mc.
First Steps with mc
This walkthrough creates a new instance and runs it.
Create an instance
Each instance lives in its own directory, with a mc.toml manifest at its
root. mc init creates both:
$ mc init myserver
$ cd myserver
The generated manifest looks like this:
name = "myserver"
description = "A Minecraft Server"
[minecraft]
version = "..."
[server]
gamemode = "survival"
difficulty = "normal"
hardcore = false
# Setting this to true indicates YOU have read and agree to the Minecraft EULA (https://aka.ms/MinecraftEULA).
# This agreement is between you and Mojang/Microsoft.
eula = false
[backups]
enabled = true
frequency = "0 0 * * * *"
[mods]
lithium = "..."
By default mc init uses the optimized preset, which adds a mod loader and
a small set of performance mods. Pass --preset vanilla for an unmodded
instance. The manifest is yours to edit; every key is documented in
The Manifest Format.
Agree to the EULA
The instance will not start until you have agreed to the Minecraft EULA. Once you have read it, set:
[server]
eula = true
You can also pass --eula to mc init to do this at creation time.
Run it
$ mc run
On first run, mc downloads a Java runtime, the Minecraft binary, the mod loader, and any configured mods, then starts the instance. Subsequent runs reuse what is already installed and start immediately.
The console is attached to your terminal. Stop the instance with Ctrl-C:
mc asks it to save the world and waits for it to exit cleanly.
Note that the allow list is enabled by default, so players must be on it
before they can join. To open the instance to everyone instead, set
white-list = false under [server.properties] in the manifest.
Next steps
- add or update mods with
mc addandmc update— see Managing Mods - configure world Backups
- deploy the instance as a service — see Running under systemd
Guides
Task-oriented guides for operating an instance:
- Managing Mods — add, remove, and update mods.
- Backups — scheduled and manual world backups, and restoring from them.
- Running under systemd — deploy an instance as a supervised service.
Managing Mods
Mods are declared in the [mods] table of mc.toml and installed when the
instance starts. Each entry maps a mod's identifier on the mod registry to the
version to install:
[minecraft]
version = "..."
loader = "fabric"
[mods]
lithium = "..."
A mod loader must be configured under [minecraft] for mods to be installed;
without one, the [mods] table is ignored. See
The Manifest Format for every supported form of a
mod entry, including mods fetched from a direct URL.
Adding and removing mods
mc add and mc remove edit
the [mods] table for you. mc add looks the mod up on the registry and pins
the latest version compatible with the configured Minecraft version and
loader:
$ mc add sodium lithium
$ mc remove sodium
Updating mods
mc update re-pins mods to the latest compatible
version — every mod in the manifest, or only the ones you name:
$ mc update
$ mc update lithium
Mods fetched from a direct URL have no version to compare and are skipped.
How mods are installed
Changes to [mods] take effect the next time the instance starts. On
startup, mc resolves each entry — including its required dependencies — and
records the result in the mc.lock lockfile. It then downloads any mod that
is missing and deletes any mod that is no longer in the lockfile.
Two consequences of this are worth knowing:
- You do not need to declare a mod's dependencies; they are resolved and installed automatically.
- The instance's
modsdirectory is fully managed by mc. A jar placed there by hand is removed on the next start. To install a mod that is not on the registry, declare it in the manifest with aurlentry instead.
Backups
mc can archive the instance's world on a schedule while it runs, and restore any archive later. Backups are coordinated with the running instance so the world is flushed to disk before it is captured — archives are always consistent, even under load.
Scheduled backups
[backups]
enabled = true
frequency = "0 0 * * * *"
With enabled = true, backups fire on the frequency schedule while the
instance runs. frequency is a cron expression with six fields — seconds,
minutes, hours, day of month, month, day of week. The example above backs up
at the start of every hour.
Coordination with a running instance happens over RCON, Minecraft's remote
console protocol. RCON is enabled whenever an RCON password is configured;
when backups are enabled and no password is set, mc generates one at startup
so backups work out of the box. See
MC_RCON_PASSWORD to set the
password yourself.
Manual backups
A backup can be taken at any time with
mc backup, even when scheduled backups are
disabled — enabled only controls the schedule. It works against a stopped
instance, and against a running one as long as the instance was started with
an RCON password configured (always the case when backups are enabled). When
the instance is running but cannot be reached, mc refuses to back up rather
than capture a world that is still being written to.
Storage
Archives go to a storage target configured under [backups.storage]. Two
types are supported.
Local (the default) stores archives in a directory and keeps only the most recent ones:
[backups.storage]
type = "local"
path = "backups"
keep = 20
S3 uploads archives to a bucket:
[backups.storage]
type = "s3"
bucket = "my-minecraft-backups"
Credentials come from the standard AWS credential chain (environment,
~/.aws, or an IAM role). The bucket can also be supplied with the
MC_BACKUPS_S3_BUCKET environment variable instead of the manifest. mc does
not prune S3 backups; use a bucket lifecycle rule to expire old archives.
Give each instance its own bucket or directory: mc treats everything in the storage target as a backup of this instance.
Notifications
mc reports backup results — along with other instance events — to a webhook
when one is configured through the environment (MC_DISCORD_WEBHOOK for
Discord). The [notifications] section of the manifest selects which
events are sent; see
The Manifest Format. A failed
notification never fails the backup itself.
Restoring
List the available backups, then restore one:
$ mc restore --list
myserver_2026-07-15_15-00-00.tar.gz (latest)
myserver_2026-07-14_15-00-00.tar.gz
$ mc restore --backup myserver_2026-07-14_15-00-00.tar.gz
Without --backup, the most recent backup is restored. The instance must be
stopped to restore. The world being replaced is set aside rather than
deleted, and is put back if the restore fails. See
mc restore.
Running under systemd
mc run is designed to live under a process supervisor. It does not restart
the instance when it crashes; it reports the failure through its exit code
and lets the supervisor decide. On Linux, systemd is the natural fit.
Unit file
Assuming an instance at /srv/minecraft/myserver, create
/etc/systemd/system/myserver.service:
[Unit]
Description=myserver Minecraft instance
After=network-online.target
Wants=network-online.target
[Service]
User=minecraft
WorkingDirectory=/srv/minecraft/myserver
ExecStart=/usr/local/bin/mc run
EnvironmentFile=/etc/minecraft/myserver.env
Restart=on-failure
[Install]
WantedBy=multi-user.target
Then enable and start it:
$ systemctl enable --now myserver
WorkingDirectory must be the instance root — the directory containing
mc.toml — since mc operates relative to it.
Secrets
Environment variables such as MC_RCON_PASSWORD or a notification webhook
are best kept out of the unit file, in an EnvironmentFile readable only by
root:
$ cat /etc/minecraft/myserver.env
MC_RCON_PASSWORD=...
MC_DISCORD_WEBHOOK=...
See Environment Variables for everything mc reads from the environment.
Stopping and restarting
systemctl stop sends the service SIGTERM. mc catches it, asks the instance
to save the world and shut down, and waits for it to exit before returning —
within systemd's default stop timeout, so the unit is not killed mid-save.
The same applies to systemctl restart and to stops issued during a system
shutdown.
Restart=on-failure brings the instance back up if it crashes, while a
clean stop (including one requested from inside the game with /stop) stays
stopped.
Logs
The instance's console output goes to standard output, which systemd captures in the journal:
$ journalctl -u myserver -f
mc's own log verbosity is controlled by the global --verbose flag; the
instance's console log level follows it.
Reference
- The Manifest Format — every key of
mc.toml. - Environment Variables — everything mc reads from the environment.
- Instance Layout — the files and directories that make up an instance.
The Manifest Format
The mc.toml manifest at the root of an instance describes everything about
it. It is written in TOML. Every section except the two
top-level keys is optional; omitted keys take the defaults listed below.
name = "myserver"
description = "A Minecraft Server"
[java]
version = "graal@25"
min_memory = 4096
max_memory = 4096
[minecraft]
version = "..."
loader = "fabric"
[server]
gamemode = "survival"
difficulty = "normal"
eula = true
[server.properties]
white-list = false
[mods]
lithium = "..."
[backups]
enabled = true
frequency = "0 0 * * * *"
name (required)
The instance name. It names the world directory inside the instance and is
used as the world's level-name. Must be usable as a directory name.
description (required)
A short description, used as the message of the day (motd) shown in the
multiplayer list.
[java]
The Java runtime used to launch the instance.
version— the runtime to install and use, as avendor@versiondescriptor. Defaults to"graal@25". Runmc java listto see the available runtimes; the one marked(recommended)is the default.min_memory— initial heap size in megabytes. Defaults to4096.max_memory— maximum heap size in megabytes. Defaults to4096.jvm_arguments— extra arguments passed to the JVM. Defaults to a small set of tuned flags; setting this key replaces the defaults entirely.
[java]
version = "graal@25"
min_memory = 8192
max_memory = 8192
jvm_arguments = ["-XX:+AlwaysPreTouch"]
[minecraft]
The Minecraft version and mod loader.
version— the Minecraft version to run. Defaults to"latest", the latest release."latest-snapshot"selects the latest snapshot, and any exact version id (seemc minecraft list) pins that version. Aliases are resolved every start, so an instance on"latest"upgrades itself when a new release comes out — pin an exact version if that is not what you want.loader— the mod loader, as anameorname@versiondescriptor (for example"fabric", which resolves to the latest loader version for the configured Minecraft version). When omitted, the instance runs without a loader and the[mods]table is ignored. Runmc minecraft list-loadersto see loader versions.
[server]
Settings mc manages for the server. Each maps to a server.properties key,
listed in parentheses; because these are managed here, they cannot be set
through [server.properties].
gamemode—"survival","creative","adventure", or"spectator". Defaults to"survival". (gamemode)difficulty—"peaceful","easy","normal", or"hard". Defaults to"normal". (difficulty)level_type—"minecraft:normal","minecraft:flat","minecraft:large_biomes","minecraft:amplified", or"minecraft:single_biome_surface". Defaults to"minecraft:normal". (level-type)hardcore— defaults tofalse. (hardcore)seed— the world seed, as an integer or a string. Random when omitted. (level-seed)eula— indicates that YOU have read and agree to the Minecraft EULA. The instance refuses to start until this istrue. Defaults tofalse.ip— the address to bind. When omitted, the server binds all addresses, IPv6 included. (server-ip)port— the game port. Defaults to25565. (server-port)rcon_port— the remote console port. Defaults to25575. (rcon.port)capacity— the maximum number of players. Defaults to20. (max-players)view_distance— in chunks. Defaults to16. (view-distance)simulation_distance— in chunks. Defaults to16. (simulation-distance)
[server.properties]
Overrides for any other
server.properties key. mc
generates the file on every start — hand edits do not survive — so this
table is the way to reach settings that have no [server] field:
[server.properties]
white-list = false
spawn-protection = 16
"query.port" = 25565
Values may be strings, integers, floats, or booleans. Keys containing a dot must be quoted, as above.
Keys managed by mc take precedence: an entry that conflicts with a value
derived from the manifest or the environment is ignored with a warning.
enable-rcon is always ignored — RCON is enabled exactly when an RCON
password is configured (see
Environment Variables).
Note two defaults that differ from a vanilla server: the allow list is
enabled (white-list), and the server binds all addresses, IPv6 included
(server-ip).
[mods]
The mods to install, keyed by the mod's identifier (slug) on the mod registry. Three forms are supported:
[mods]
# a version identifier on the registry
lithium = "..."
# the same, spelled out
carpet = { version = "...", service = "modrinth" }
# a jar fetched from a URL, for mods not on the registry
my-mod = { url = "https://example.com/my-mod.jar" }
service names the registry hosting the mod and defaults to "modrinth".
mc add, mc remove, and
mc update edit this table for you and pin
compatible versions. Required dependencies are resolved automatically when
the instance starts and recorded in the mc.lock lockfile — see
Managing Mods.
[backups]
Scheduled world backups, taken while the instance runs.
enabled— schedule backups while the instance runs. Defaults tofalse. Manualmc backupworks regardless.frequency— a cron expression with six fields: seconds, minutes, hours, day of month, month, day of week. Defaults to"0 0 * * * *"(hourly).
[backups.storage]
Where archives are stored. type selects the backend:
[backups.storage]
type = "local"
path = "backups" # default
keep = 20 # most-recent archives to keep; default
[backups.storage]
type = "s3"
bucket = "my-minecraft-backups"
For s3, the bucket may also come from the MC_BACKUPS_S3_BUCKET
environment variable, and credentials come from the standard AWS credential
chain. The default is local storage.
See the Backups guide for the full picture.
[notifications]
Webhook notifications about the instance. A provider is activated by
setting its webhook environment variable (MC_DISCORD_WEBHOOK for
Discord) — the URL is a secret and is never read from the manifest, and
without one no notifications are sent. This table selects which events are
reported; every key defaults to true:
on_lifecycle_event— the instance started or stopped.on_panic— the instance crashed.on_sigkill— the instance was forced down without a clean save, because it did not stop within the grace period or a second stop signal arrived.on_backup— a backup completed.on_backup_failure— a backup failed.
[notifications]
on_lifecycle_event = false
on_backup = false
Environment Variables
The environment acts as an override layer on top of mc.toml, and is the
only place mc reads secrets from — secrets are deliberately kept out of the
manifest so it can be committed and shared safely.
MC_RCON_PASSWORD
The password for RCON, the remote console protocol used to coordinate
backups with a running instance. It takes precedence over a
"rcon.password" entry under [server.properties].
RCON is enabled exactly when a password is configured. When backups are enabled and no password is set anywhere, mc generates one at each start so backups work out of the box; set this variable when other tooling needs to reach the remote console with a known password.
MC_BACKUPS_S3_BUCKET
The S3 bucket that receives backup archives when [backups.storage] has
type = "s3". It takes precedence over the bucket key in the manifest and
can replace it entirely.
S3 credentials are not read through mc-specific variables; they come from
the standard AWS credential chain — AWS_ACCESS_KEY_ID /
AWS_SECRET_ACCESS_KEY, the ~/.aws configuration files, or an attached
IAM role.
MC_DISCORD_WEBHOOK
The Discord webhook URL that notifications are posted to. Setting it is
what turns notifications on; without it none are sent. The [notifications]
section of the manifest selects which events are reported — instance
lifecycle, crashes, forced shutdowns, and backup results are all on by
default.
Instance Layout
An instance is a directory with mc.toml at its root. All mc commands run
from that directory, and everything the instance needs lives under it:
myserver/
├── mc.toml
├── mc.lock
├── .java/
├── .minecraft/
├── backups/
├── instance/
│ ├── eula.txt
│ ├── server.properties
│ ├── mods/
│ └── myserver/
└── temp/
Only one running server is allowed per instance directory; a second mc run
in the same directory refuses to start.
mc.toml
The manifest describing the instance — the only file you author. See The Manifest Format.
mc.lock
The mod lockfile: the fully resolved set of mods, including required dependencies, that the instance last started with. Regenerated when the instance starts.
.java/ and .minecraft/
Installed Java runtimes and Minecraft binaries, keyed by version, shared by every start of this instance. Safe to delete while the instance is stopped; whatever is missing is downloaded again on the next start.
backups/
The default destination for backup archives when local storage is used. The directory is dedicated to this instance's backups; see Backups.
instance/
The live working directory of the Minecraft process. Notable contents:
eula.txt— generated from theeulakey in the manifest.server.properties— generated from the manifest on every start; manual edits are overwritten. Use the[server.properties]section ofmc.tomlinstead. When the file holds secrets, such as an RCON password, mc creates it readable only by the owning user and refuses to start if its permissions have been loosened.mods/— the installed mods. This directory is fully managed: mc adds and removes jars to match the lockfile, so a jar placed here by hand is deleted on the next start. Declare URL mods in the manifest instead.myserver/— the world, named after the instance'sname. Everything else Minecraft writes at runtime (logs, player data, allow list, and so on) also lives here and is left untouched by mc.
temp/
Scratch space for in-flight downloads and archives. Cleared when the instance starts; safe to delete while nothing is running.
Commands
- General Commands — the
mcbinary itself and its global options. - Manifest Commands — create and edit
mc.toml:mc init,mc add,mc remove,mc update. - Instance Commands — operate the instance:
mc run,mc backup,mc restore. - Installation Commands — inspect and
pre-install runtimes and versions:
mc java,mc minecraft.
General Commands
mc
mc [OPTIONS] <COMMAND>
The mc binary is a collection of subcommands; run one of the commands
documented in this chapter. Every command operates on the instance in the
current working directory — the directory containing mc.toml.
Global options
These options are accepted by every command.
-v,--verbose— more detailed output. Repeat for more:-vprints informational messages,-vvdebug,-vvvtrace. The instance's console log level follows this setting.-q,--quiet— do not print mc log messages.--color <WHEN>— control colored output:auto(the default),always, ornever.-h,--help— print help.-V,--version— print the mc version.
Exit status
mc exits with 0 on success and a non-zero code on failure.
mc run propagates the instance's own exit code when the
instance ends abnormally.
mc help
mc help [COMMAND]
Prints help for mc or for the given command. Equivalent to passing
--help:
$ mc help init
$ mc init --help
Manifest Commands
Commands that create or edit mc.toml:
- mc init — create a new instance.
- mc add — add mods to the manifest.
- mc remove — remove mods from the manifest.
- mc update — update pinned mod versions.
mc init
mc init [OPTIONS] [PATH]
Creates a new instance: a mc.toml manifest and the supporting directories.
PATH defaults to the current directory and is created if it does not
exist. The command refuses to run where a mc.toml already exists.
Options
--name <NAME>— the instance name. Defaults to the directory name.--eula— record your agreement to the Minecraft EULA in the generated manifest. Without it, the manifest is created witheula = falseand the instance will not start until you edit it.--preset <PRESET>— the shape of the generated manifest:vanilla— no mod loader and no mods.optimized— a mod loader plus performance mods. This is the default.technical— a mod loader plus performance mods and tools for technical play.
Presets pin the latest Minecraft release and compatible mod versions at the time the command runs; the generated manifest is a starting point to edit, not a fixed template.
Examples
$ mc init myserver
$ mc init --preset technical --eula
$ mc init myserver --name "smp" --preset vanilla
mc add
mc add [OPTIONS] <MOD_SLUG>...
Adds mods to the [mods] table of the manifest. Each MOD_SLUG is the
mod's identifier on the mod registry. The latest version compatible with the
configured Minecraft version and loader is looked up and pinned; the command
fails if a mod cannot be found for that combination.
A mod loader must be configured under [minecraft] before mods can be
added.
Changes take effect the next time the instance starts, which also installs any required dependencies — see Managing Mods.
Options
--manifest-path <PATH>— path tomc.toml. Defaults to./mc.toml.
Examples
$ mc add lithium
$ mc add carpet servux
mc remove
mc remove [OPTIONS] <MOD_SLUG>...
Removes mods from the [mods] table of the manifest. A slug that is not in
the manifest is reported and skipped.
The jars are uninstalled the next time the instance starts. A removed mod's dependencies are not kept: anything no longer required disappears from the lockfile and is uninstalled along with it.
Options
--manifest-path <PATH>— path tomc.toml. Defaults to./mc.toml.
Examples
$ mc remove carpet
mc update
mc update [OPTIONS] [MOD_SLUG]...
Re-pins mods in the manifest to the latest version compatible with the configured Minecraft version and loader. With no arguments every mod is updated; otherwise only the named ones. Mods already at their latest version, and mods fetched from a URL (which carry no version), are skipped.
The new versions are installed the next time the instance starts.
Options
--manifest-path <PATH>— path tomc.toml. Defaults to./mc.toml.
Examples
$ mc update
$ mc update lithium carpet
Instance Commands
Commands that operate on the instance itself:
- mc run — start the instance.
- mc backup — back up the world.
- mc restore — restore the world from a backup.
mc run
mc run [OPTIONS]
Brings the instance in line with the manifest, then starts it. Anything missing or out of date is installed first: the Java runtime, the Minecraft binary, the mod loader, and the mods (added, updated, and removed to match the manifest). The generated configuration files are rewritten from the manifest on every start.
Only one running server is allowed per instance directory; a second
mc run refuses to start.
While the instance runs, mc supervises it: the console output is attached to the terminal, and scheduled backups fire when enabled — see Backups. The console is not interactive; use the remote console (RCON) for live administration.
Stopping
Ctrl-C (or SIGTERM, e.g. from a service manager) asks the instance to save
the world and shut down, and waits for it to exit before returning. If the
instance hangs past a grace period, or a second signal arrives, it is forced
down immediately.
mc does not restart a crashed instance; run it under a supervisor for that — see Running under systemd.
Exit status
When the instance ends abnormally, mc run fails and propagates the
instance's exit code.
Options
--manifest-path <PATH>— path tomc.toml. Defaults to./mc.toml.--lockfile-path <PATH>— path tomc.lock. Defaults to./mc.lock.
mc backup
mc backup [OPTIONS]
Archives the world and stores it in the storage target configured under
[backups.storage] — see Backups. Works whether or
not scheduled backups are enabled.
The instance may be stopped or running. A running instance is reached over its remote console so the world is flushed to disk before it is archived; if the instance is running but the remote console is not available, the command refuses rather than capture a world that is still being written to. Only one backup can run at a time.
Options
--manifest-path <PATH>— path tomc.toml. Defaults to./mc.toml.
Examples
$ mc backup
mc restore
mc restore [OPTIONS]
Replaces the world with one restored from a backup. The instance must be stopped.
The world being replaced is moved aside rather than deleted; if the restore fails, it is put back and the command reports the failure. One set-aside world is kept until the next restore replaces it.
Options
--list— list the available backups instead of restoring.--backup <BACKUP>— the backup to restore, by the filename shown by--list. Defaults to the most recent backup.--manifest-path <PATH>— path tomc.toml. Defaults to./mc.toml.
Examples
$ mc restore --list
myserver_2026-07-15_15-00-00.tar.gz (latest)
myserver_2026-07-14_15-00-00.tar.gz
$ mc restore
$ mc restore --backup myserver_2026-07-14_15-00-00.tar.gz
Installation Commands
Commands to inspect available versions and pre-install components.
mc run installs everything it needs automatically, so these
are mostly useful for exploring what is available and for provisioning
ahead of time:
- mc java — Java runtimes.
- mc minecraft — Minecraft versions and mod loaders.
mc java
Manage Java runtimes.
mc java list
mc java list
Lists the runtimes mc can install, as vendor@version descriptors. The one
marked (recommended) is the default used when the manifest does not
configure [java] version.
$ mc java list
graal@25 (recommended)
graal@21
...
mc java install
mc java install [OPTIONS] <VERSION>
Downloads a runtime into the instance's .java directory. VERSION is a
descriptor from mc java list; the version half may be omitted to take the
vendor's recommended version. Fails if the runtime is already installed.
mc run installs the configured runtime automatically; this
command exists to provision one ahead of time.
Options
-p,--platform <PLATFORM>— install for a specific operating system instead of the current one.-a,--architecture <ARCHITECTURE>— install for a specific CPU architecture instead of the current one.
Examples
$ mc java install graal@25
$ mc java install corretto@21
mc minecraft
Manage Minecraft versions and mod loaders.
mc minecraft list
mc minecraft list [OPTIONS]
Lists Minecraft versions, most recent first. By default only the ten most recent releases are shown, with the latest release and latest snapshot tagged.
Options
--all— show every version instead of the ten most recent.-s,--snapshots— include snapshot versions.-b,--betas— include beta versions.-a,--alphas— include alpha versions.
mc minecraft list-loaders
mc minecraft list-loaders [OPTIONS]
Lists mod loader versions compatible with a Minecraft version, most recent first.
Options
-l,--loader <LOADER>— the loader to list versions for. Defaults tofabric.-m,--minecraft-version <VERSION>— the Minecraft version to list loader versions for. Defaults tolatest.--limit <LIMIT>— the number of results. Defaults to10.
mc minecraft install
mc minecraft install [OPTIONS] [VERSION]
Downloads a Minecraft binary into the instance's .minecraft directory.
VERSION accepts the same values as [minecraft] version in the manifest
(latest, latest-snapshot, or an exact version id) and defaults to
latest. Fails if that version is already installed.
mc run installs the configured version automatically; this
command exists to provision one ahead of time.
Options
-l,--loader <LOADER>— install the binary for a mod loader instead of the vanilla one, as anameorname@versiondescriptor (for examplefabric).
Examples
$ mc minecraft install
$ mc minecraft install --loader fabric