PHILADELPHIA -- In a game that featured 16 runs, 26 hits and eight homers, a spectacular defensive play made the difference.
But the offensive production was overshadowed by Wright's diving stab in the ninth inning that helped Billy Wagner earn his first save in Philadelphia since leaving the Phillies as a free agent last offseason.
Wagner got the final five outs for his 13th save in 16 chances. Wright helped the Mets' closer with a backhanded catch on a ball hit down the line by Pat Burrell to start a double play. Wagner ended it by striking out Aaron Rowand with a man on.
"That was fantastic, an unbelievable play. It saved the game," Wagner said.
Was Wright surprised he caught the hard, one-hopper?
"No. You have to think you're going to catch it," Wright said.
Tom Glavine failed to win his 10th game and allowed four homers for just the second time in his career, but the NL East-leading Mets overcame the left-hander's shortest outing of the season to win their sixth straight game.
New York (40-23) has the best record in the NL and leads second-place Philadelphia by 7½ games.
Chad Bradford (3-2) recorded two outs to escape a bases-loaded jam in the fifth, and the Mets took advantage of three errors to score five times in the sixth.
Brian Sanches came in and retired pinch-hitter Julio Franco on a hard liner to second baseman Chase Utley. But Utley made a wild throw to first base trying to get a double play, allowing Valentin to score. After Jose Reyes was intentionally walked to load the bases, Paul Lo Duca's infield single off third baseman David Bell's glove put New York ahead 7-4.
Aaron Fultz entered and got Beltran to hit a grounder to Bell. But Bell bobbled the ball and threw wild to home for another error, allowing two runs to score to make it 9-4.
"We have to play better than that," Phillies manager Charlie Manuel said. "Usually the games that we lose our defense has hurt us."
Dellucci cut it to 9-7 with a pinch-hit, three-run shot off Aaron Heilman in the eighth inning. Rollins followed with a walk, but Lo Duca threw him out trying to steal second base on the same pitch Wagner fanned Utley.
Glavine allowed four runs and seven hits in 4 1/3 innings. He was coming off his worst outing of the season in which he allowed six runs in 5 1/3 innings against Los Angeles, but still got his ninth win.
Rollins homered leading off the first to tie it at 1, and hit another shot leading off the fourth to make it 4-4. It was Rollins' first career multihomer game.
Utley followed Rollins' second homer with a double off the wall in center field. Glavine got the next out, but left after walking Burrell and Howard to load the bases.
Bradford came in and retired Rowand on a pop-up to first base and Bell on a bouncer to third to end the inning.
"There's a guy that goes unnoticed," Mets manager Willie Randolph said of Bradford. "He's not one of the name guys in our bullpen, but he's been unbelievable for us."
Madson gave up eight runs -- six earned -- and eight hits in five innings. The Phillies fell to 8-2 in his starts.
Beltran and Delgado hit consecutive homers in the third inning to give the Mets a 4-2 lead. Reyes started the inning with a double and scored one out later on Beltran's 18th homer. Delgado followed with his 19th homer.
Rowand's homer leading off the second gave the Phillies a 2-1 lead.
"Right now the Mets have everything going their way," Howard said. "It's a long season and hopefully we'll start getting the bounces and they'll start making errors."
- The Phillies honored the late Eric Gregg with a video tribute and a moment of silence. The family of the former umpire, who grew up and lived in Philadelphia, was at the game.
- The Mets are 12-2 when Glavine starts. Glavine allowed four homers against Atlanta on May 30, 2003.
- The Mets are 7-1 on their 10-game road trip.
- Abreu extended his hitting streak to 12 games.
- Rollins extended his franchise record to 16 leadoff homers.