The team traded Donovan Ricketts to the Portland Timbers for Troy Perkins in a swap of veteran goalkeepers on Tuesday.
Ricketts, 35, started 24 of Montreal's 25 games and was coming off his third shutout in a 2-0 win Saturday against Philadelphia.
The 31-year-old Perkins played 22 games with the Timbers this season, helping them set a team record of 377 consecutive minutes without allowing a goal.
The Impact acquired Ricketts from the Los Angeles Galaxy for allocation money on Dec. 23.
Coach Jesse Marsch had been a staunch defender of the 2010 MLS goalkeeper of the year when he came in for criticism from fans and media this season, so the trade was a surprise.
"We would like to thank Donovan for his services with the Impact but we did not feel he fit into our plans moving forward," Impact sporting director Nick De Santis said in a statement.
Ricketts earned his first clean sheet with Montreal in a 2-0 victory over Portland on April 29.
Perkins started that match for the Timbers, but left in the 67th minute with a bad gash on his face after a kick from Impact forward Sanna Nyassi.
"We are happy to be able to add Troy to our group and we think he will make an immediate impact in what we are trying to achieve," said Marsch. "We feel this will help us make a strong push at the end of this year, as well as solidify ourselves for the future."
Montreal also has Evan Bush, who had one start this season, and veteran goalie Greg Sutton.
The six-foot-two Perkins played for D.C. United from 2004 to 2007, winning MLS goalkeeper of the year in 2006. He moved to Norway in 2008 and returned to MLS with Portland in 2010. He has played more than 150 MLS games.
The Impact (9-13-4) next play Sunday at New England.