MIAMI — Jose Reyes kept getting on base Friday night, and the New York Mets started looking like a different team.

Reyes had his first three-hit game since joining the run-starved Mets early this month and scored twice to help them beat the Miami Marlins 5-3.

"He's like a can of Red Bull balled up into a human being," teammate Logan Verrett said, "and that's something we were lacking."

Reyes drove in a run, stole a base and scored on two sacrifice flies by Yoenis Cespedes. The Mets' new leadoff hitter had two hits from the right side and one from the left, and even reached on a strikeout thanks to a passed ball.

"Today I feel very good," Reyes said. "I felt like I was seeing the ball better from both sides of the plate. Hopefully I can continue to be like that. When you have a good game like that, you have to be a little bit consistent and remind yourself what you were doing to be successful."

Jeurys Familia gave up an RBI single by pinch-hitter Martin Prado in the ninth before retiring Adeiny Hechavarria with two on for his 50th consecutive save, including 34 this season to lead the majors. The Mets closed within a half-game of second-place Miami in the NL East.

Verrett took a shutout into the sixth but departed after giving up a two-run homer to Christian Yelich, his 10th. Hansel Robles (5-3) pitched 1 2/3 scoreless innings.

The Mets' James Loney entered the game as a defensive replacement and hit a two-run homer into the upper deck in the ninth.

Reyes led off the game with a double, stole third and scored on Cespedes' flyout. Reyes' two-out RBI single in the fourth put the Mets ahead 2-0, and he scored on another sacrifice fly by Cespedes in the seventh for a 3-2 lead.

It was the kind of performance the Mets envisioned from the 33-year-old Reyes when they signed him, manager Terry Collins said.

"This guy produces runs," Collins said. "He gets on base, he gets in scoring position. I realize that even though he is fast, he is probably a step slower than he was five years ago. But he's still a great baserunner, and he creates havoc on the bases."

Reyes raised his average to .250 and made a fine play at third base to rob Hechavarria.

"I never stopped believing in what I can do on the field when someone gives me an opportunity," he said. "I'm going to continue to get better."

The game was Reyes' first at Marlins Park since he played for Miami in 2012, when he and the team endured a rocky season. He downplayed the significance of his return.

"It doesn't mean anything," he said. "It was another game."

Adam Conley gave up two runs in six innings for Miami. David Phelps (4-5) allowed the Mets' run in the seventh.

Manager Don Mattingly found little to fault in the performance of his Marlins, who returned to town from a seven-game trip at 4:30 a.m.

"I thought we were really good," Mattingly said. "Adam battled and we got back into the game. You always want rest, but we're not going to make excuses. We had a chance to win that game."

SUZUKI UPDATE

The Marlins' Ichiro Suzuki struck out on three pitches in the eighth inning as a pinch-hitter and remained four hits shy of 3,000.

TRAINER'S ROOM

Mets: RHP Zack Wheeler, making a slow recovery from Tommy John surgery in March 2015, threw 30 pitches in a bullpen session. He said the next step will be to face batters before he goes on a minor league rehab assignment.

Marlins: 1B Justin Bour (sprained ankle) is expected to start doing work on the field this weekend and might be ready for a rehab assignment early next week.

UP NEXT

Marlins All-Star Jose Fernandez (11-4, 2.53) is scheduled to start Saturday against Jacob deGrom (6-4, 2.38), who pitched a one-hit shutout against the Phillies in his most recent outing.

"If you're a baseball fan and you love the game, Saturday night's game is a game you'd want to come and see," Collins said.