SEATTLE – While most of the Braves' bats have slumbered, Brian McCann's has sizzled.

The catcher kept rolling Tuesday night with four hits including a tie-breaking, two-run single with two out in the seventh inning that lifted the Braves to a 5-4 win against the Seattle Mariners at Safeco Field.

"I’m seeing the ball well, getting a good pitch to hit," said McCann, who has seven of the Braves' 13 hits in consecutive wins to start the three-game series.  "I’m working counts and being patient. When I have those things going, I feel confident that I can get some hits.”

Dan Uggla hit his third homer in six games and Tommy Hanson (9-4) got through a rough first couple of innings to pitch six and win his first game back from the disabled list and his fourth start in a row.

Hanson extolled the all-around performance by McCann.

"He’s unbelievable," Hanson said. "The game today pretty much showed it. I got off to a slow start and he told me, ‘Stay right there, we’re going to win this game.’ And that’s exactly what happened. He got those hits. He got me through that game somehow; I honestly don’t know how.

“He got me through that game and came up huge for us.”

Craig Kimbrel had two strikeouts in a scoreless ninth inning for his 22nd save, extending his own National League rookie record for saves before the All-Star break.

The Braves rallied from a 3-0 deficit after four innings to clinch a series win and improve to 3-2 on a six-game trip that ends Wednesday afternoon when they'll try for a sweep of the Mariners.

It won't be easy, as Braves veteran Derek Lowe attempts to snap a nine-start winless streak with a tough matchup against Mariners ace Felix Hernandez.

The Braves left the ballpark late Tuesday feeling good after coming back to win against hard-throwing Mariners starter Michael Pineda, who entered with a 2.45 ERA.

“That’s something we haven’t done a lot this year, is come back from a three-run deficit against a pitcher like that," said McCann. "We battled and came up with some big hits.”

McCann went 4-for-5 and has a .387 average with 21 RBIs in his past 24 games, including 10 homers (he homered in Monday’s 3-1 win). His second four-hit game of the season raised his average from .307 to .317.

Hanson had been on the disabled list 15 days for shoulder tendinitis and returned without benefit of a minor-league rehab start.

He looked rusty early, giving up a home run to Ichiro Suzuki on the first pitch he threw. He surrendered another run in the second inning when two of the first three batters doubled, with Jack Cust’s double making it 2-0.

Hanson avoided further damage by coaxing a bases-loaded fly ball by Adam Kennedy to end the inning.

“I thought [McCann] did a terrific job handling Tommy today," Braves manager Fredi Gonzalez said, "and Tommy just hung in there for six innings, and we were able to get the lead and hold it.

"The first two, three innings he kind of fought himself a little. Then he kind of settled in."

Cust homered in the fourth inning to push the lead to 3-0, but again the Mariners left the bases loaded when Kennedy struck out.

Hanson was charged with three runs, six hits and three walks with eight strikeouts in six innings. He’s 4-0 with a 2.16 ERA in his past four starts, with 32 strikeouts and 11 walks in 25 innings.

“I have checkpoints throughout my windup – get to this point, separate your hands, get to this point," Hanson said. "Everything kind of feels normal when I’m locked in, And at first I really didn’t feel that way.

"I felt like I was trying to rush to home plate and really get going. Once I kind of settled down there ... I felt a lot more comfortable once I realized that and tried to slow down a little bit and get down in the zone."

Braves hitters went to work in the fifth inning, when Uggla hit his 12th homer of the season. Uggla’s still hitting a National League-worst .177, although three of his four hits in the past six games have been homers.

They cut the lead to 3-2 in the sixth when Jason Heyward and McCann hit consecutive two-out singles before Chipper Jones hit a ball that caromed off the glove of first baseman Justin Smoak for an error that brought in a run.

Pineda had control problems in the seventh inning, walking Uggla and Eric Hinskie consecutively. After slumping Alex Gonzalez struck out, Nate McLouth drew a walk to load the bases.

The Mariners brought in lefty Aaron Laffey to face Jordan Schafer, who was 4-for-34 (.118) against lefties since arriving from Triple-A. His fifth hit off a lefty was a pulled single to shallow right for a 3-all tie.

"Huge hit," McCann said. "He swung at the first pitch, then hung in on the next one and flared one in there. That’s tough, staying in there on a tough lefty like that, with the game on the line."

Heyward struck out, but McCann followed with another lefty vs. lefty hit, a single through the right side for a 5-3 lead. McCann is 11-for-28 (.393) with runners in scoring position and two outs, among the league’s top five.

The Braves threatened again in the ninth after Heyward worked at 12-pitch walk and McCann singled with one out. Jones flied out to right fielder Suzuki, and Heyward tagged up and raced home, sliding head first.

He slide head-first and was called out on a close play.

Heyward made a strong running catch to rob Cust of a potential extra-base hit in the eighth, grabbing it in full stride with his glove extended, then hanging onto the ball after crashing into the wall.