The Cardinals have won four in a row, and 14 of their last 17 at home against Pittsburgh.
The Pirates fell to 4-3 on their nine-game road trip.
Jon Jay started the winning rally with a two-out single off Rob Scahill (0-2). Matt Carpenter followed with a double down the left-field line, and Matt Holliday was intentionally walked. Adams then laced a 1-1 pitch to left field.
Randy Choate (1-0) struck out Gregory Polanco with two on for the win.