One run scored when a pitch by Dillon Gee struck the Marlins' Garrett Jones on the foot, though it went down as a wild pitch because nobody caught on in time.
Two more came across on Jones' swinging bunt off the end of his bat and Donovan Solano's soft liner just over the reach of Lucas Duda at first base.
In Wednesday night's 4-3 loss to the Marlins, the Mets simply couldn't catch a break.
That reality couldn't have been more clear in the fifth inning, when the Mets had pulled within 3-2 on a rally started by Gee's first hit of the season, snapping an 0-for-41 skid dating to 2013.
With two outs, Duda lined a two-run, bases-loaded single to bring the Mets within a run, giving Wilmer Flores a chance to put his team in the lead. Off the bat, he appeared to do just that, driving a ball toward the gap in left-center.
But centerfielder Marcel Ozuna perfectly timed his leap against the fence. At second base, Flores tossed his helmet into the air as the ball disappeared into Ozuna's glove.
In the seventh, Christian Yelich's RBI double off lefty Josh Edgin pushed the Marlins' lead to 4-2, before the Mets responded in the eighth when Duda scored on a Curtis Granderson groundout. But that's as close as the Mets would get.
Gee (7-8) allowed four runs and seven hits in 62/3 innings.
The Marlins played without slugger Giancarlo Stanton, who was officially ruled out for the remainder of the season.
Stanton's bid for the National League's Most Valuable Player award essentially came to an end last Thursday when he was hit in the face with a fastball thrown by the Brewers' Mike Fiers. The impact left Stanton with cuts, face fractures and two black eyes.
Stanton, 24, hit an NL-leading 37 homers with 105 RBIs.
"There's just not enough time for it to properly heal, and for him to get medically cleared to be able to play," Marlins manager Mike Redmond told reporters before the game.