  We give a self-contained derivation of the MHV amplitudes for gravity and use
the associated twistor generating function to define a twistor action for the
MHV diagram approach to gravity. Starting from a background field calculation
on a spacetime with anti self-dual curvature, we obtain a simple spacetime
formula for the scattering of a single, positive helicity linearized graviton
into one of negative helicity. Re-expressing our integral in terms of twistor
data allows us to consider a spacetime that is asymptotic to a superposition of
plane waves. Expanding these out perturbatively yields the gravitational MHV
amplitudes of Berends, Giele & Kuijf. We go on to take the twistor generating
function off-shell at the perturbative level. Combining this with a twistor
action for the anti self-dual background, we obtain a twistor action for the
MHV diagram approach to perturbative gravity. We finish by extending these
results to supergravity, in particular N=4 and N=8.
