Haren, a three-time all-star, went 10-14 with a 4.67 ERA over 31 appearances with the Washington Nationals last season, including 6-3 with a 3.14 ERA after July 27.
Terms of the 33-year-old's deal weren't disclosed, but Fox Sports reported it is for $10 million in 2014 with a vesting option for the following year.
"Dan brings experience as a winner to our club and rotation," Colletti said. "Last year, his second half was among the best in the National League."
He has posted a 129-111 mark with a 3.74 ERA over 11 major league seasons with the St. Louis Cardinals, Oakland Athletics, Arizona Diamondbacks, Los Angeles Angels and Washington.