PHILADELPHIA (AP) - Mike Soroka gave up one run and eight hits in 4 2/3 innings but was removed with the bases loaded and a 5-1 lead. Sean Newcomb (4-1) earned the win by retiring J.T. Realmuto on a soft grounder to end the inning.
The NL East-leading Braves had lost six of eight before their first win in Philadelphia in six games, dating to last season.
The Phillies fell 6 1/2 games behind Atlanta, but is right in the mix for a wild card with the trade deadline coming up next week.
Philadelphia's Jake Arrieta (8-8) allowed five runs - four earned - and five hits in five innings. Arrieta, who is battling bone spurs in his elbow, pitched one-run ball until the fifth.
McCann ignited a four-run fifth with a towering homer into the second deck in right field. Johan Camargo reached on third baseman Maikel Franco's error and Ender Inciarte walked. They advanced on Soroka's sacrifice and scored on Acuña's two-run single to center. Ozzie Albies lined an RBI double to right to make it 5-0.
The Braves scored another four runs in the sixth off Cole Irvin despite getting only one hit. Irvin hit one batter and walked three, including two men with the bases loaded.
Phillies manager Gabe Kapler kept Irvin in the game to bat with two runners on and one out in the bottom half. Fans booed after the pitcher flied out to left.
The Phillies had runners at first and third with two outs in the third, but Bryce Harper popped out. They had the same situation with one out in the fourth, but Franco grounded into a double play started by third baseman Josh Donaldson making an excellent backhanded stab.
Acuña extended his on-base streak to 30 games, the longest active streak in the majors.
NEWK'S NEW HOME
Newcomb has a 1.42 ERA since moving to the bullpen after returning from Triple-A Gwinnett on May 4.
Braves: SS Dansby Swanson wasn't in the lineup for the second straight game because of a sore heel. Manager Brian Snitker said Swanson could end up on the 10-day injury list. He'll be evaluated on Saturday.
Phillies: LF Jay Bruce could return within 10 days. Bruce has been out with a strained right oblique.
LHP Max Fried (10-4, 4.08 ERA) starts for the Braves and RHP Zach Eflin (7-10, 4.25) goes for the Phillies on Saturday night.