Many ways to do this. But for stuff that snaps in front of the camera we attach an invisible, non-collidable, static mesh to the character camera. Then use sockets on that static mesh to attach stuff or get positions in front of the camera.
Nice thing about this is you can drop a character into the editor, attach stuff to it, and get an idea of how it looks in the editor preview camera.