Anaheim announced the deal Wednesday night after a 7-6 loss to Washington.
Mara had two points in 33 games this season with the Ducks, who signed him to a one-year, $750,000 contract shortly before training camp. He hadn't played since Jan. 18, missing eight straight games and 23 of 25 as a healthy scratch.
The Ducks reacquired defenseman Francois Beauchemin from Toronto last week, further decreasing Mara's chances of playing for Anaheim.
Mara played 48 games for the Canadiens last season before a season-ending shoulder injury. Anaheim was his sixth NHL team.