Outfielder Carlos Beltran and the New York Yankees have finalized a three-year, $45-million US contract.
The agreement, reached Dec. 6, was announced by the team Thursday. The eight-time all-star is to be introduced at a Yankee Stadium news conference Friday.
The 36-year-old played for the Mets from 2005-11, when he was dealt to San Francisco. He signed a $26 million, two-year contract with St. Louis before the 2012 season and reached the World Series for the first time this year.
Slowed by knee injuries, Beltran has retained a potent bat, especially in October. He hit .296 with 24 homers and 84 runs batted in for the Cardinals this year and added two homers and 15 RBIs in the post-season.
Beltran injured ribs in the World Series opener when he banged into Fenway Park's right-fight fence while robbing Boston's David Ortiz of a grand slam.
New York seems to have a logjam among outfielders on its roster, a group that includes Jacoby Ellsbury, Brett Gardner, Ichiro Suzuki, Alfonso Soriano and Vernon Wells.
To open a roster spot, the Yankees designated right-hander Brett Marshall for assignment.