Diego Valeri scored twice, the second in second-half stoppage time, as the Portland Timbers defeated host Sporting Kansas City 3-2 Thursday night to claim the MLS Western Conference championship.
Sebastian Blanco also scored for the fifth-seeded Timbers, who will play at Atlanta United FC for the MLS Cup on Dec. 8.
Portland won a knockout-road game at FC Dallas before upsetting the West's top two seeds, the No. 2 Seattle Sounders and No. 1 Sporting KC, with the deciding games on the road.
After a scoreless first leg in Portland, Sporting Kansas City took the lead Thursday on Daniel Salloi's goal in the 20th minute, assisted by Diego Rubio.
Rubio, who missed the series opener after being suspended for yellow-card accumulation, took a pass from the right wing and drove along the touchline before sending a cross to the far post, where Salloi was unmarked.
Sporting KC had two other first-half goals waved off, one for offside and the other when Ike Opara interfered with Portland goalkeeper Jeff Attinella.
After not scoring a goal against SKC in the first 3 1 /2 games between the teams this season, the Timbers struck in the 52nd minute.
Blanco took a pass from Jorge Villafana at the sideline and worked his way toward the top left edge of the 18-yard box. He then unleashed a 30-yard shot that found the upper right corner of the net, leaving SKC goalkeeper Tim Melia no chance.
The Timbers took the lead nine minutes later as Jeremy Ebobisse got behind the defense. Melia was able to get a hand on Ebobisse's chipped shot, but Valeri was there to head the rebound into the net.
That put Sporting KC in position of needing two goals to advance, as a tie would send Portland through on the away-goals tiebreaker.
SKC substitute Gerso Fernandes scored unassisted after a scramble in front of the net in the 81st minute to give the home fans some hope, but the Timbers were able to hold on.
Valeri, the 2017 league MVP, scored the clincher on a breakaway in the ninth minute of second-half stoppage time.
Attinella, who was forced to make just one save in the opener, had six in the second leg. Melia wasn't credited with a save.