ForgeNeoForgeFabricQuiltMC 1.16.xMC 1.18.xMC 1.19.xMC 1.20.x

Client-only mod installed on a Minecraft server

Some mods only ever run on the game client — shaders, minimaps, camera and jumpscare mods, animation overhauls, most horror-atmosphere mods. Put one on a dedicated server and it either crashes during mod loading (it calls a rendering class that does not exist server-side) or it loads and then kicks every joining player for a mod-list mismatch. The confusing part is that the crash log names the mod, but the fix is often on the player's machine rather than the server's.

Fastest path: paste your crash report into the Crash Doctor — it identifies this pattern and 40+ others automatically. No signup.

How to fix it

  1. 1

    Read which side the log is complaining about

    A server-side crash naming a rendering class (anything under net.minecraft.client, RenderSystem, GameRenderer, or a mod's *Client class) means that mod does not belong on the server at all. A 'missing mods' or 'mod mismatch' disconnect on join means the opposite: the player has a mod the server does not, or vice versa.

  2. 2

    Remove client-only mods from the server, not from everyone

    Shaders, minimaps, dynamic lights, jumpscare and camera-shake mods should live only in each player's own mods folder. Delete them from the server's mods/ directory and restart. The server does not need them for the world to behave correctly, and players keep the visual effect locally.

  3. 3

    When the pack is the source, fix it per player

    Several popular horror packs ship client-only mods inside the pack itself. If the server rejects a player for a mod the server cannot run, the fix is that the player deletes that jar from their own mods folder — the server is right to refuse it. This surprises people, because the instinct is to change the server.

  4. 4

    Check for a server pack before blaming the mod

    Most CurseForge packs publish a separate server pack with the client-only mods already stripped. If you installed the client pack on the server, switching to the server pack removes an entire class of these failures at once.

Alternative causes

These can produce the same error message — worth ruling out if the steps above don't resolve it.

The mod is dual-sided but needs matching versions

Some mods run on both sides but refuse a mismatch down to the patch version. The disconnect message looks identical to a client-only problem. Compare the exact version strings on both sides before deleting anything.

A dependency, not the named mod, is the client-only one

Library mods get pulled in as dependencies and inherit the same restriction. The crash names the visible mod; the actual client-only jar can be a small library it depends on.

Frequently asked

How do I know if a mod is client-only?

The CurseForge or Modrinth page lists the supported environment — look for 'Client' with no 'Server'. As a rule of thumb, if the mod only changes what you see or hear, it is client-only.

Can I just force the server to accept the mod?

No. If the mod calls rendering code, that code genuinely does not exist in the server jar and no config flag creates it. Removing it from the side that cannot run it is the only real fix.

Why does the pack ship mods the server cannot run?

Because the pack is built for players first. That is normal and not a bug — it is why authors publish a separate server pack, and why hosts strip client-only mods on install.

Want this auto-fixed on your server?

CoalHosting's Minecraft hosting runs the same pattern database against every crash and applies the known fix before your players notice. Free crash diagnosis works on any server, hosted or not.

Related crashes

Last reviewed 2026-08-15. If a step is wrong or out of date, tell us — we'll fix the article and the auto-pattern at the same time.