Carpenter set the tone, hitting a leadoff home run in the first inning. The Cardinals went on to win for the seventh time in nine games.
Piscotty and Yadier Molina each had three of the Cardinals’ season high-tying 19 hits.
Carlos Martinez (12-7) gave up one run and four hits over eight innings. He also got two hits himself.
Roughed up for the second straight start, deGrom (7-7) allowed five runs on 12 hits in 4 2/3 innings. He was tagged for a career-worst eight runs and 13 hits in his previous outing against San Francisco.
Carpenter was back in the leadoff spot after several games hitting third. His 16th homer this year was his third leadoff homer of the season.
Jay Bruce led off the Mets second with a double but had to leave because of a cramp in his right calf. Pinch-runner Alejandro De Aza scored on a double by Asdrubal Cabrera.
Piscotty drove in the go-ahead run in the third with an infield single.
Grichuk, who had doubled earlier, hit his 17th homer in the fourth. Piscotty connected for his 19th homer, a two-run drive, in the fifth.
Greg Garcia and Molina later had RBI singles.
CLICK Audio player above to hear Mike Matheny’s post-game comments