The Mets trailed 4-0 heading into the eighth, but Satin delivered a sacrifice fly in that inning and New York then scored four times in the ninth to halt San Francisco's winning streak at four games.
The setback ensured a losing season for San Francisco, World Series champion in two of the last three seasons.
A one-out double by Zach Lutz delivered one run and New York scored another on an infield single by Juan Centeno.
A two-out walk to Omar Quintanilla loaded the bases and Satin, down to his last strike, singled home Lutz and pinch-runner Anthony Recker to win the game.
The comeback gave the win to Vic Black (2-0), who retired the side in order in the top of the ninth.
Two of San Francisco's runs came on a homer by Gregor Blanco in the third.
Exploding whale video goes viral on Internet
Gal Gadot cast as Wonder Woman for 'Batman vs. Superman'