MIAMI - Michael McKenry had a career-best four hits and drove in two runs, Neil Walker and Garrett Jones each added two RBIs, and the Pittsburgh Pirates beat the Miami Marlins 7-4 on Saturday night.
McKenry, who came into the night batting .191, raised his average 26 points with a double and three singles. Walker added three hits for the Pirates, the NL wild-card leaders who set the tone with three first-inning runs against Miami's Tom Koehler (2-6).
Charlie Morton (3-2) allowed a season-high nine hits in five innings, still finding a way to win consecutive starts for the first time since May 2011. Mark Melancon worked the ninth for his fourth save.
Koehler gave up nine hits and five runs in five innings.
Logan Morrison tied a season-high with three hits, Giancarlo Stanton also had three hits, and Christian Yelich added a pair for the Marlins, who are 3-35 when allowing at least five runs.
The Pirates finished with 14 hits, their most since June 12.
McKenry was a most improbable catalyst of that attack. The light-hitting catcher came into the night with four hits in 32 at-bats, and only three hits in July.
But his RBI single capped a three-run first inning - Pittsburgh's highest-scoring opening frame since June 18 - and he added another single in the third to push the Pirates' lead to 5-1. He added a double in the fifth, a single in the seventh and grounded to short to open the ninth.
McKenry also saved an almost-sure run in the fifth to preserve what was then a 5-4 lead. Morton threw a pitch that sailed behind Miami's Placido Polanco, but McKenry dove well to his left to snag the ball and keep it from heading toward the backstop, ensuring Stanton would remain at third. Morton fanned Polanco to end the inning.
Walker and Garrett Jones each drove in two runs for Pittsburgh.
By the time Koehler had thrown five pitches, the Pirates were up 1-0. Starling Marte smacked a double just to the inside of the third-base bag on Koehler's second pitch, and three offerings later, Walker hit a ball to nearly the same spot to open the scoring.
Jones blooped a double into short left to make it 2-0, and McKenry got one under Polanco's glove and into right for the third run.
It was the third time Koehler allowed at least three first-inning runs in six starts, but Miami clawed back.
Stanton doubled to bring Yelich home and start what became a three-run third for Miami. One batter later, Morrison looped a soft single into left, and Stanton read it correctly, taking off almost on contact and scoring easily. Polanco added a single to bring Morrison home and get the Marlins within a run.
They never got any closer. Andrew McCutchen tripled and scored in the eighth to make it 7-4.
Four Pittsburgh relievers worked the final four innings, allowing two hits.
NOTES: Pirates SS Jordy Mercer's 11-game hitting streak ended. ... Sunday's pitching matchup pits a pair of stellar rookies, with All-Star Jose Fernandez (6-5, 2.74) going for Miami against Pittsburgh's Gerrit Cole (5-3, 3.51). ... Pirates players signed Friday's scorecard as a gift for Marlins rookie Jake Marisnick, who got his first career hit in that game. ... Marlins closer Steve Cishek has converted 16 straight save chances. "Couldn't get him in the game the first two months and now he's pitching a lot, which is great," manager Mike Redmond said. ... The Pirates hope C Russell Martin (knee) can play Sunday. He wasn't in Saturday's lineup.