RepRap wiki says:
Probes the bed at 3 or more points. The printer must be homed with G28 before G29.
Which is about as much use as a chocolate teapot.

Does it just spew the data out of the serial / USB port or does it use it to modify the Z values while extruding?

I need to probe the 4 corners of my PCB and use the data to modify the Z value on cuts such that with a PCB that is say X30 Y40 if I send G0 X10 Y15 Z0.03 the move performed is actually G0 X10 Y15 Z(0.05 + 10*probeZx/30 + 15*probeZy/40).

Is this what it does?

I had this implemented on my CNC mill when I had LinuxCNC on it but I recently moved over to Marlin and need it because the Z cuts ideally are just the thickness of the copper (0.007 inches), any amount of not level screws the board, I either have to set the cut too deep or I get bits that are not cut. Spending an hour making sure the board is absolutely level is not really an option.