Another light in the dark of my ignorance.
I didn't recognize the difference between mouse_pos3d and mouse_dir3d - now, i sending t a trace from the mouse position into the 3d space is as simple as possible:
//send a trace at the object's surface
vec_set(temp.x, mouse_dir3d);
vec_normalize(temp.x,1000);
vec_add(temp.x, mouse_pos3d);
c_trace(mouse_pos3d,temp.x, IGNORE_PASSABLE | USE_POLYGON | SCAN_TEXTURE);
This is more or less identical to the example under mouse_pos3d in the manual!