How to solve weapon attachment with character mesh in FPS multiplayer game

Want to do:
In FPS multiplayer game(listened server), when player pick up a weapon, the weapon just attach with hand mesh socket. Other Players see weapon attached on third person human mesh.

My way:
Have both hand mesh and third person human mesh in character bluprint.
Create a repnotify(OwnerOnly) variable for weapon.
When player pick up weapon, call server attach weapon to third person mesh.
Check if is locally controlled, if true then attach the weapon to hand mesh.

Problem:
Clients works well. But other players see weapon attached to hand mesh position on server player.

Attach a weapon to each hand. On the autonomous proxy set Owner No See on the mesh.

Thank you for reply. I have tried the same logic by C++ and it works well now. Maybe the blueprints need a different logic to do. I have also tried your way, it’s a very good idea. Thank you.