How to make tool accurately point at cursor

I have a script set up, where the arm will point towards the cursor. I want the tool to point to the cursor, and i’m moving the arm to achieve that. Problem is, the tool isn’t pointing at the cursor.
Knipsel

How would i achieve this?

This is the script i currently have.

local cframe = CFrame.lookAt((Torso.CFrame*rightShoulder_C0).Position, mouseHit.Position) * CFrame.Angles(0, math.pi/2, 0)
RightShoulder.C0 = Torso.CFrame:toObjectSpace(cframe)

try using UIS:GetMouseLocation

local UIS = game:GetService("UserInputService")
local pos = UIS:GetMouseLocation()

The issue still persists sadly