In the course project why is Vector3 used when in it the api makes it clear that it can only represent a direction and tf2 will only use it to make a rotation. Point is recommended when using translation. The message definitions are the same both have x, y and z as float64. So the question is why is Vector3 recommended and not Point ?
Both can be used. However, like you pointed out, Point does not include a direction (magnitude). Personally, I rather use Vector3 even if I only need a translation just to avoid confusion on what to use in the future and keep a standard.