Tim Hudson (10-7) gave up nine hits and five runs in 6 2-3 innings, but the big hits by McCann and rookie Brent Lillibridge helped Hudson improve to 8-1 in 12 career starts against Washington. Hudson is 7-0 in his last eight starts against the Nationals. He began the night with a 1.13 career ERA against Washington.
The Nationals, trailing 7-5, scored a run in the ninth against Mike Gonzalez. Pinch-hitter Felipe Lopez hit a one-out single and moved to third on a double to right by Willie Harris. Lopez scored on Paul Lo Duca's grounder to second, sending Harris to third.
Gonzalez hit Christian Guzman with a pitch but earned his fourth save when Austin Kearns flied out to right field.
Lillibridge gave the Braves a 2-0 lead in the second with a two-run double. Lillibridge, making his fourth straight start for Yunel Escobar (sore left shoulder), was 2-for-4 and has four extra-base hits in his last three games.
Lillibridge added a single in the sixth and scored on Kelly Johnson's single.
The Nationals tied it with three hits in the third. Kory Casto led off with a double over Mark Kotsay in center field and scored on Ryan Langerhans' single. With two outs, Lo Duca drove in Langerhans with another single up the middle.
The Braves scored four in the third. McCann's bases-loaded double to right drove in Gregor Blanco, Chipper Jones and Mark Teixeira. Blanco and Teixeira reached on walks. Kotsay added a single to drive in McCann for a 6-2 lead.
Tim Redding (7-4) gave up six runs on six hits and three walks in four innings, matching his shortest start of the season. The six earned runs allowed matched his season high.