Mostly correct. Mods that need to be installed on just the server are serverside mods, also called plugins. Mods that are installed only on the client side (usually in the form of hacks) are client side mods. Since the only the thing done client side in the code is rendering, there are very few client side mods. It also means that if you want to be able to play modded minecraft on a server, the server needs to have the mod installed, and you need to have the mod installed. If you have mods that aren't on the server, and those mods are coded so that
serverSideRequired=false
then you can have them installed even if the server doesn't, but they will be disabled. The code for determining whether a mod is required in the server, the client, or both, is
@NetworkMod(clientSideRequired=true/false, serverSideRequired=true/false)
Most mods (Not counting plugins and client side mods/hacks here) need to installed on both the client and server, so the code is set to
@NetworkMod(clientSideRequired=true, serverSideRequired=false)