
Paper CLI
Paper CLI is a small tool that deploys PaperMC servers. The whole thing is
one binary called paper, and it works offline: the server files are packed
inside the binary itself, so creating a new server is just unpacking — no
downloads, no installers, no browser.
If you just want to run a server, you only need three commands. Everything else in these docs is detail you can read when you need it.
Install
install\windows.bat
sh install/macos.sh # macOS -> ~/.local/bin/paper
sh install/linux.sh # Linux -> ~/.local/bin/paper
Uninstall
install\uninstall-windows.bat
sh install/uninstall-macos.sh
sh install/uninstall-linux.sh
Quickstart
paper new ./my-server # create a server
paper run ./my-server # run it (java -jar paper.jar, basically)
paper delete ./my-server # wipe everything but paper.jar when you're done
Leave out the path and the command uses the folder you're standing in:
cd my-server
paper run
Pick your platform on the left for setup instructions (Java, getting the binary), then come back here for the full command list.
Commands
paper help — prints the help text. paper --help and paper -h do the
same thing.
paper new . | PATH — creates a new server here (.) or at PATH.
The folder is created if it doesn't exist. If a paper.jar is already
there, it refuses — pass --force (or -f) to overwrite it.
paper run [PATH] — starts the server. Under the hood this runs
java -jar paper.jar inside the server folder, with your terminal attached
so you get the console, commands, and Ctrl+C handling for free.
| Flag | What it does |
|---|---|
--nogui |
Appends nogui, so no server GUI window pops up |
--memory, -m <n>[mb\|gb] |
Heap size, e.g. --memory=4gb or -m=512mb (sets -Xms and -Xmx to the same value) |
--optimized, -o |
Shortcut for 4GB of heap. Ignored if you also pass --memory |
--java <path> |
Use a specific Java binary instead of the one on your PATH |
--dry-run |
Print the java command without running it — handy for checking flags |
paper run ./my-server --nogui -m=2gb
paper run ./my-server -o
paper run --dry-run --memory=512mb
paper delete [PATH] — deletes everything in the server folder
except paper.jar: worlds, configs, logs, all of it. It asks for
confirmation first, unless you pass --confirm (or -y). As a safety
rule, it refuses to touch a folder with no paper.jar in it.
paper delete --confirm
paper delete ./my-server -y
Colors
Output is colored on a real terminal (white, light blue, gray) and plain
everywhere else, so pipes and log files stay clean. PAPER_COLOR=1 forces
colors on, NO_COLOR=1 forces them off.
Why offline?
A normal Paper setup downloads its libraries and version files on first
launch. Paper CLI ships those files inside the binary instead
(paper.jar, libraries/, cache/, configs), so paper new works on a
machine with no internet. The only things left out are files the server
recreates by itself on boot (versions/, logs/, plugin caches) — which
also keeps the binary smaller (~177MB instead of ~244MB).
Want to know how all of this is put together? The Developers page walks through the source file by file.
Legal in brief
Your servers run PaperMC (GPL-3.0) and Mojang's server code (proprietary).
Running one means you accept the
Minecraft EULA — note that paper new
pre-accepts it in eula.txt so the server starts right away. The full
attribution, the GPL copy, and the redistribution tradeoff of the offline
bundle are documented in NOTICE.md in the repo. This project isn't
affiliated with Mojang, Microsoft, or PaperMC.
