Cammalleri played one season in Calgary and it was the best one of his nine-year career. He had 39 goals and 82 points in 81 games with the Flames during the 2008-09 campaign.
He played the first five years of his career with Los Angeles and was in his third season with the Canadiens.
"Mike Cammalleri is a dynamic player who enjoyed great success playing in Calgary," Flames General Manager Jay Feaster said. "We are confident that a return to Calgary will be good for Mike and good for our continued pursuit of a playoff berth."
Cammalleri has nine goals and 13 assists this season.