// free tool

Client-side or server-side? Mod checker and list

Some mods only run in the game client, like shader loaders, rendering mods and menu screens. A dedicated server can't run client code, so one of these left in the server's mods folder can stop the server on startup. Paste your mod list to see which ones to take off the server, or look a mod up in the table below.

Updated  ·  Labels checked against Modrinth on 5 October 2026  ·  Forge, NeoForge, Fabric

Check your mod list

Your list is read in your browser and isn't sent to us. With the Modrinth box ticked, the names of mods that aren't in our table go to Modrinth's public API (api.modrinth.com) to be looked up.

Getting the list

How the checker decides

For each file, the checker drops the version, Minecraft version and loader from the name, so sodium-fabric-0.8.13+mc1.21.1.jar becomes sodium. It looks the mod up in our table first. Mods that aren't in the table are looked up on Modrinth by name, and a search result only counts if its name matches exactly. Each mod then gets one of these labels:

Libraries are the trapA library's own label can say it's optional on the server, but if any mod on your server lists it as a required dependency, the server needs it. Take it out and the loader stops with a missing dependency error. GeckoLib, Cloth Config, Balm and Kotlin for Forge are common examples.

Labels are set by each mod's author, and they can be wrong. Where a mod's own documentation says something different, our table follows the documentation and says why. Simple Voice Chat is one: Modrinth lists it as working on either side, but its install guide says to always install it on both.

What Modrinth's side labels mean

Until August 2025, every Modrinth mod had two settings, Client-side and Server-side, each set to Required, Optional or Unsupported. Sodium, for example, is client required and server unsupported: it goes on players' PCs and not on the server.

The weak spot was "unsupported". Modrinth itself pointed out that people read it differently: does "unsupported" on the server side mean the mod crashes a server? Some combinations made no sense, like unsupported on both sides, and some real setups, like a mod that only works on a dedicated server, had no way to be labeled. So Modrinth replaced the two settings with one environment label that names the setup outright, and asked every author to check theirs:

Modrinth's labelMeaningOn your server
Client-side onlyEverything happens in the client. Should work when joining a vanilla server.Remove
Singleplayer onlyDoesn't work in multiplayer at all.Remove
Server-side only, works in singleplayerEverything happens on the server. Players without it can join.Keep
Server-side only, dedicated server onlyOnly runs on a dedicated server, not in singleplayer.Keep
Client and server, required on bothMust be installed on the server and on every player's client.Keep, players need it too
Client and server, optional on clientMust be on the server. Players can install it for extra features.Keep
Client and server, optional on serverMust be on the client. On the server it adds extras.Optional
Client or server, works best on bothWorks on either side alone, but best with both.Optional
Client or server, works the same on eitherEither side alone gives the full feature.Optional

Modrinth's API still returns the old client_side and server_side fields next to the new environment field. The checker uses the environment label when there is one and falls back to the old fields. A project can list more than one environment when its versions differ: Create's versions before 6.0 say "optional on client", and 6.0 onward say "required on both". Modpack files (.mrpack) still use required, optional and unsupported for each file, to decide which files go into the client install and which into the server install.

Common mods: client, server or both

50 mods people often ask about, checked against Modrinth on 5 October 2026. Every row has its own link, like #distant-horizons. "Modrinth" shows the label the mod's author picked; the first line is what that means for a server.

ModOn a serverNotes
3D Skin LayersClient-onlyModrinth: Client-side onlyRenders the outer layer of player skins in 3D. Its page says it doesn't need to be installed on servers.
AppleSkinOptional on the serverModrinth: Client or server, works best on bothFood and saturation on the HUD. It has to be on the server too for accurate saturation and exhaustion values.
Architectury APIBoth sidesModrinth: Client and server, required on bothLibrary for mods that ship on several loaders. Keep it wherever a mod that needs it is installed.
BlueMapServer-sideModrinth: Server-side only, dedicated server only; Server-side only, works in singleplayer3D map of your world in a web browser. Set accept-download: true in config/bluemap/core.conf before it will render (read what that agrees to first).
Port: TCP 8100 by default for the web map: port in config/bluemap/webserver.conf. It needs a second open port, so ask your host for one.
C2ME (Concurrent Chunk Management Engine)Server-sideModrinth: Client and server, optional on clientImproves chunk performance on Fabric.
CarpetServer-sideModrinth: Client and server, optional on clientFabric server tools, such as live TPS and mob caps with /log. Players can install it too, but don't have to.
ChunkyOptional on the serverModrinth: Client or server, works best on bothPre-generates chunks. From the server console: chunky radius 1000, then chunky start. In game, you need to be an operator.
Cloth Config APIOptional on the serverModrinth: Client or server, works best on bothConfig screen library. Keep it if any mod on the server lists it as a dependency.
CobblemonBoth sidesModrinth: Client and server, required on bothPokémon to catch, battle and trade. Current versions require Fabric API on Fabric and Kotlin for Forge on NeoForge.
Pack guides: Cobblemon (Fabric), Cobblemon (NeoForge).
ContinuityClient-onlyModrinth: Client-side onlyConnected textures from resource packs.
CreateBoth sidesModrinth: Client and server, optional on client; Client and server, required on bothMachines, contraptions and new blocks. On Modrinth, versions before 6.0 are labeled "optional on client" and 6.0 onward "required on both".
Pack guides: Create: Above and Beyond, Create: Arcane Engineering.
Distant HorizonsOptional on the serverModrinth: Client or server, works best on bothRenders far terrain as LODs. Works client-only. With it on the server too, the server sends LODs to players who have it and have distant generation turned on.
Dynamic FPSClient-onlyModrinth: Client-side onlyLowers resource use while the game is in the background, idle or on battery.
EmbeddiumClient-onlyModrinth: Client-side onlyClient performance mod for NeoForge and Forge.
EMIOptional on the serverModrinth: Client and server, optional on serverItem and recipe viewer. Needed on the client; the server copy is optional.
Entity CullingClient-onlyModrinth: Client-side onlySkips rendering entities and block entities you can't see. Its page says it does not need to be on the server.
Entity Model Features (EMF)Client-onlyModrinth: Client-side onlyCustom entity models from resource packs, in the OptiFine format.
Entity Texture Features (ETF)Client-onlyModrinth: Client-side onlyEmissive, random and custom entity textures from resource packs.
EssentialClient-onlyModrinth: Client-side onlyFriends, chat and free world hosting from inside the game.
Fabric APIOptional on the serverModrinth: Client or server, works best on bothLibrary that many Fabric mods depend on. If a mod on the server needs it, the server won't start without it.
Farmer's DelightBoth sidesModrinth: Client and server, required on bothNew crops, cooking and food.
FerriteCoreOptional on the serverModrinth: Client or server, works the same on eitherCuts memory use. Its page recommends installing it on both sides, because some of its bigger savings are on the server.
GeckoLibOptional on the serverModrinth: Client and server, optional on serverAnimation library for entities, blocks, items and armor. The server copy is marked optional, but a server mod that depends on it won't load without it.
ImmediatelyFastClient-onlyModrinth: Client-side onlySpeeds up immediate-mode rendering.
Iris ShadersClient-onlyModrinth: Client-side onlyShader pack loader that works with existing OptiFine shader packs.
JadeOptional on the serverModrinth: Client or server, works best on bothShows what you're looking at. Works client-only, but some details, like container contents, brewing stand fuel and bees in a hive, need Jade on the server.
JourneyMapOptional on the serverModrinth: Client or server, works best on bothReal-time map. The server copy only controls JourneyMap features; the mapping itself happens on the client.
Just Enough Items (JEI)Optional on the serverModrinth: Client or server, works best on bothItem and recipe viewer. On 1.21.1 and older it works client-only with a few features off. From 1.21.2 the server holds the recipes, so install JEI on the server to send them to players.
LithiumOptional on the serverModrinth: Client or server, works best on bothGame logic optimizations. Its page says it works on the client or the server and doesn't need to be on both.
LuckPermsServer-sideModrinth: Server-side only, works in singleplayerPermissions for servers: admins create groups and assign permissions to control what players can use.
Mod MenuClient-onlyModrinth: Client-side onlyAdds a screen listing your installed mods. Modrinth uses it as its example of a client-side only mod.
ModernFixOptional on the serverModrinth: Client or server, works best on bothPerformance, memory and bug fixes.
Mouse TweaksClient-onlyModrinth: Client-side onlyExtra mouse-button controls for moving items in inventories. Its page says there is no server-side component.
No Chat ReportsOptional on the serverModrinth: Client or server, works best on bothStrips chat message signatures. Works on the client, the server or both, and does something different in each case; its page explains each setup.
NoisiumServer-sideModrinth: Server-side only, works in singleplayerFaster world generation. Its FAQ says only the server needs it, and that it also works in singleplayer.
OculusClient-onlyModrinth: Client-side onlyUnofficial fork of Iris for Forge and NeoForge, for shader packs.
Physics ModClient-onlyModrinth: Client-side onlyRagdolls, crumbling blocks and item physics.
ReplayModClient-onlyModrinth: Client-side onlyRecords your gameplay so you can replay it and share it.
Roughly Enough Items (REI)Optional on the serverModrinth: Client or server, works best on bothItem and recipe viewer, an alternative to JEI. Its page says that to serve both JEI and REI players from one server, install JEI there together with REI Server Component.
ServerCoreServer-sideModrinth: Server-side only, works in singleplayerServer optimizations.
Simple Voice ChatBoth sidesModrinth: Client or server, works best on bothProximity voice chat. Players need it installed too, or they can join but can't use voice chat.
Port: UDP 24454 by default: port in config/voicechat/voicechat-server.properties. Voice uses its own port, separate from the game port, so your host has to open it. Don't set it to -1 (the game's port): the mod's docs warn that can crash the server.
Why we say both sides: The mod's own install guide says to always install it on both the client and the server. Source.
Sinytra ConnectorOptional on the serverModrinth: Client or server, works the same on eitherRuns Fabric mods on NeoForge 1.21.1 and 26.1.2 and on Forge 1.20.1. It requires Forgified Fabric API, and its 26.1.2 builds also require Launchpad. If your server loads Fabric mods through it, the server needs it too.
SodiumClient-onlyModrinth: Client-side onlyRendering engine replacement that raises frame rates and cuts stutter.
Sodium ExtraClient-onlyModrinth: Client-side onlySodium add-on with extra video options.
Sophisticated BackpacksBoth sidesModrinth: Client and server, required on bothUpgradable backpacks. It requires Sophisticated Core, which also goes on both sides.
sparkOptional on the serverModrinth: Client or server, works the same on eitherPerformance profiler for clients, servers and proxies. On a server, run /spark profiler start, then /spark profiler stop to see the results.
TerralithServer-sideModrinth: Server-side only, works in singleplayerAlmost 100 new biomes built from vanilla blocks. Marked server-side only, so players without it can still join. From version 2.6.0 the mod needs Lithostitched, which goes on the server too.
WaystonesBoth sidesModrinth: Client and server, required on bothWaystone blocks you teleport between. It requires the Balm library, and its 26.3 versions also require Shogi, so keep those on the server too.
Xaero's MinimapOptional on the serverModrinth: Client and server, optional on serverMinimap with waypoints. On the server it adds server-side settings and more reliable detection of separate worlds.
Xaero's World MapOptional on the serverModrinth: Client and server, optional on serverFull-screen world map. Its page calls it mostly client-sided; on the server it adds features like world identification.

Missing a mod? Paste its file name into the checker above, which asks Modrinth about anything not in this table. The table data is also available as JSON.

"Invalid dist DEDICATED_SERVER": a client-only mod on the server

When a client-only mod ends up on a Forge server, or a NeoForge server up to 1.21.5, startup usually stops with an error like this:

java.lang.RuntimeException: Attempted to load class net/minecraft/client/Minecraft for invalid dist DEDICATED_SERVER

Newer NeoForge versions dropped that check, so the same mistake there usually shows up as a NoClassDefFoundError naming a net/minecraft/client class. On Fabric, look for Cannot load class … in environment type SERVER. When Fabric Loader starts a dedicated server, it leaves out any mod whose fabric.mod.json sets "environment": "client", so on Fabric the culprit is usually a mod tagged for both sides that still calls client code.

The client-only mod crash guide shows how to find the mod from the log and take it off safely. Or paste the whole log into the crash log analyzer.

Sinytra Connector: Fabric mods on NeoForge

Sinytra Connector loads Fabric mods on NeoForge (its 1.21.1 and 26.1.2 releases) and on Forge 1.20.1. It requires Forgified Fabric API, and its 26.1.2 builds also require Launchpad. For a server:

Checking a mod yourself

Related guides

Modded hosting is relaunching.

DSN hosts Forge, NeoForge and Fabric servers with a file manager and SFTP for moving mods in and out, and support from the owner by email or Discord. We're moving DSN Servers to new hardware, and ordering is closed until then. Join the launch list and we'll email you when servers open.

Join the launch list