The St. Louis Post-Dispatch reported Craig is guaranteed to earn $31 million over the term of the contract.
Craig batted .307 with 22 home runs and 92 RBI last season in 119 games after returning from off-season knee surgery.
His .400 batting average with runners in scoring position led the major leagues last year, his first season as a full-time starter.
- - -
Cardinal shortstop Rafael Furcal, who reinjured his elbow making a sidearm throw in a camp drill, is scheduled to have Tommy John ligament replacement surgery on Wednesday, according to the Post-Dispatch.
He will be lost for six to eight months. His next game probably will be in the Dominican winter league next offseason, the Post-Dispatch reported.
Pete Kozma, who replaced Furcal when the latter suffered a torn ligament last Aug. 30, will have the job again.
- - -
New York Yankees shortstop Derek Jeter has declared himself ready to play now that his broken left ankle is "100 percent healed."
The next step is to play a spring-training game. Manager Joe Girardi has said Jeter would start as a designed hitter and likely be limited to two at-bats initially. His first action could come this weekend or Monday.
- - -
Detroit Tigers manager Jim Leyland is working on a one-year contract. The 68-year-old has no plans to retire after this season, regardless of whether the Tigers win the World Series or not, according to MLB.com.