Replication of automatic fire to server

Hey, I’ve been trying to figure out the proper way of doing this, so before spawning a projectile (on server) I do a line trace to figure out where the bullet should go since its coming from the weapon muzzle, my only problem is with automatic fire should I keep calling Server_Fire from client to server several times with a timer for example or should I only send one RPC to the server (StartFiring) and let the server run the timer and stop when client sends another RPC (StopFiring) which one is best ?

I’m also wondering about line trace from server usually I send trace start and trace end from client to server then server do the trace, do you think I should let the server figure out the trace start/end I found this to be inconsistent since my camera location (client) is not exactly the same in the server the trace impact point is slightly different.

Thank you so much for your help.