The 24-year-old Mackey agreed to a two-year deal with an average annual value of $912,500. He made his NHL debut for the Flames last season, finishing with a goal and two assists in six games.
After playing at Minnesota State, he signed with Calgary as an undrafted free agent in March 2020.
The 36-year-old Richardson agreed to a one-year, $800,000 contract. He has 107 goals and 139 assists in 825 regular-season games in 16 seasons with Colorado, Vancouver, Arizona, Nashville and Los Angeles.
Flames coach Darryl Sutter was behind the bench when Richardson won a Stanley Cup with the Kings in 2012.