It's a two-way deal that will pay him $800,000 at the NHL level and $105,000 at the AHL level.
"Marc-Andre was in the NHL all of last season, and will push for a job with us in the fall," said Ron Francis, Hurricanes vice president of hockey operations. "He has good size and has shown the ability to produce offensively both in the AHL and the NHL."
Gragnani, 25, split the 2011-12 season between the Buffalo Sabres and Vancouver Canucks, totaling two goals, 15 points and 26 penalty minutes in 58 games. The Montreal native played 44 games with the Sabres and had a plus-10 rating prior to being dealt to the Canucks along with Zack Kassian in exchange for Cody Hodgson and Alexander Sulzer on Feb. 27.
Selected by the Sabres in the third round (No. 87) of the 2005 NHL Draft, Gragnani has appeared in 73 career NHL games with Buffalo and Vancouver, registering three goals and 18 points.