Metamaterials have provided a new way of controlling classic waves to achieve applications in space. In this work, we construct the gradient waveguide in two-dimensional elastic metamaterial plate to achieve rainbow trapping of flexural waves and then realize piezoelectric energy harvesting. Based on the band gap of flexural waves, the waveguide is formed by the introduction of line defects into the perfect metamaterial plate. The gradient waveguide is designed through the investigation of dispersion curves of guided waves for different geometrical parameters. The elastic flexural waves at different frequencies in the gradient waveguide separate, stop and hence are amplified in different positions. That is, the rainbow trapping is observed. To convert mechanical energy into electrical energy, piezoelectric patches are attached in the proposed metamaterial waveguide. Compared with a reference harvester (i.e., a homogeneous plate without metamaterial structure), the output power from the metamaterial energy harvester is significantly amplified. Besides, the proposed metamaterial harvester exhibits the capacity of multi-frequency energy harvesting.