Socket two meshs from one blueprint

Perhaps I understand something wrong. Perhaps someone could lead me in the correct direction by answering the following questions:

  • Where should be meshes attached to sockets? On server side or on client side?
  • How would you create the following functionality: Multiplayer character switches his weapon. The current weapon should be switched on the server side but the client animation should attach the suiting meshes like needed. Character unequips his pistol and equips the assault rifle. How can this be synced correctly? Should the clients hold the switching meshes separately from the client?