The contract is reportedly worth about $30 million.
Cuddyer, 32, is a career .272 hitter in 11 seasons with the Minnesota Twins. He hit .284 with 20 homers in 2011.
He brings a big bat and a veteran presence to Colorado, where general manager Dan O'Dowd has talked about changing the clubhouse culture after a disappointing 2011 season.
Cuddyer was Minnesota's first-round choice and the ninth overall pick in the 1997 draft. He became expendable when the Twins signed outfielder Josh Willingham to a three-year, $21 million deal earlier this week.
Cuddyer has played first base, second base, third base and both corner outfield spots in the majors, so he gives Colorado manager Jim Tracy the luxury of using him at multiple positions. His arrival also means Seth Smith could return to a reserve role or serve as trade bait.
Jerry Crasnick is a senior baseball writer for ESPN.com. Information from The Associated Press was used in this report.