Michael Wacha didn't have his best stuff on Tuesday night, but his offense gave him plenty of support.
Wacha (4-0), who allowed one run in each of his first three starts this season, gave up four runs on six hits and two walks over 5 2/3 innings to pick up the win.
Severino Gonzalez (0-1), making his MLB debut, was roughed up for seven runs on 10 hits over 2 2/3 innings.
Chase Utley and Odubel Herrera had two RBI apiece for the Phillies, who had won two straight and three of their last four coming in.
St. Louis jumped all over Gonzalez in his debut, scoring two runs in the first and second innings before a putting up a three-spot in the third that knocked him out of the contest.
Matt Carpenter hit his first triple of the season with one out in the first and trotted home on Matt Holliday's double to center. Adams followed with a single that made it 2-0 after one.
Wacha helped his own cause with an RBI groundout in the second that scored Molina, then Jay sent a ground ball base hit into right for a 4-0 lead.
Philadelphia got two back in the third on Herrera's RBI double and Utley's run-scoring single.
Gonzalez's night came to an end in the home third when Adams doubled after Holliday's single to put two runners in scoring position. Jhonny Peralta sent a sacrifice fly into center and Molina followed suit two batters later. Gonzalez hit the showers when Wacha lined a single into center that staked the Cardinals to a 7-2 lead.
Herrera and Utley each added RBI groundouts in the fifth to move the Phillies closer, but Jay singled home a run in the home half and Carpenter ripped an RBI ground-rule double a batter later for a 9-4 lead.
Andres Blanco had an RBI double in the seventh for Philadelphia, then Adams and Molina knocked in runs in the eighth to account for the final margin.