
How to Add Mods to a Minecraft Server
This doc shows server owners how to upload individual mods to a Forge, Fabric, or NeoForge server, match versions on the client, and fix the errors that show up when something doesn't load.
Switch the server to the mod's loader (Forge, NeoForge or Fabric) on the Versions page, then open Files, go to /mods, upload the .jar and restart the server. If the mod adds blocks, items or mobs, players need the same .jar, same version, in their own mods folder.
Before you start
- Make sure your server already runs Forge, Fabric, or NeoForge. Check this on the Versions page, and switch the software there if it still runs Vanilla or Paper.
- Restart the server after uploading. The mod won't load until you do.
- For a full modpack, skip the one-by-one uploads: with modded Minecraft server hosting the pack and its loader are installed before the first boot.
Steps
- 1Check your loader and Minecraft version on the Versions page.
- 2Download the mod's
.jarfrom its CurseForge page. Pick the file made for your loader and Minecraft version. - 3Go to Files, open
/mods. Create the folder if it's not there. - 4Upload the
.jar. - 5Restart the server.
Over SFTP instead: connect, then drop the .jar straight into /mods.
The panel's mod browser does the same: it lists CurseForge mods filtered to the loader and version your server runs, and shows every jar already in /mods, so you can update, disable or remove the ones it recognises.
If the mod adds blocks, items or mobs, tell your players to install the same .jar, same version, in their own mods folder before they join.

Verify
Restart, then watch Console. Confirm the mod's name shows up in the loading lines, then join and check that one of its items, blocks or commands works.
If it doesn't work
- Console says a file "is a Fabric mod and cannot be loaded", or the mod never shows up: it was built for another loader. Download the build made for your loader and replace it.
- Server stops and Console says a mod requires another mod or a different Minecraft version: download the missing library, such as Fabric API for most Fabric mods, or the build for your server's version, then restart.
- Players see "Your client is missing the following mods" or "The following mod versions do not match": send them the exact
.jaryou used, same version, to install on their end. - Server crashes with
java.lang.OutOfMemoryErrorafter you add mods: every mod stays in memory before anyone joins, so a longer list needs more RAM. The RAM calculator sizes it for your setup and player count. - Server runs but lags and Console prints "Can't keep up! Is the server overloaded?": install spark, run
/spark profiler startwhile it lags, then/spark profiler stopafter about three minutes and paste the link into the Spark Report Analyzer. It names the mod that costs the most tick time.



