  We construct finite element methods for the incompressible
magnetohydrodynamics (MHD) system that precisely preserve magnetic and cross
helicity, the energy law and the magnetic Gauss law at the discrete level. The
variables are discretized as discrete differential forms in a de Rham complex.
We present numerical tests to show the performance of the algorithm.
