The St. Louis Cardinals and Allen Craig, coming off a breakout season, have agreed on a five-year contract through 2017 with a club option for 2018.
The 28-year-old Craig has 150 RBIs in 238 career games. He was sixth in the National League with a .307 average and 22 home runs last season and had 92 RBIs despite missing more than a month while rehabbing from offseason knee surgery. Craig led the major leagues with a .400 average with runners in scoring position and has hit .374 the last two seasons, second in the majors behind the Reds' Joey Votto.
Craig also had a big postseason for a championship team in 2011, hitting three homers in the World Series.