Assuming the cutscene is triggered by a localscript, you can use run.PreRender:Connect() and tie it to a function which moves the workspace.Camera.CFrame to the npc’s camera part.
local run = game:GetService("RunService")
local camera = workspace.Camera
local cameraPart -- The part the npc holds
local function onCutsceneStart()
local function cameraTied()
camera.CFrame = cameraPart.CFrame
end
local toggle = run.PreRender:Connect(cameraTied)
-- additional cutscene sequence stuff
toggle:Disconnect()
end
onCutsceneStart()
The rest can be done by welding the cameraPart to the npc’s hand