The person spoke to The Associated Press on Friday on condition of anonymity because the deal had not yet been made official. Free-agent signings cannot be announced until July 10, according to NBA rules.
The second year of the deal includes a player option, the person said.
McRoberts outperformed expectations last season after being acquired from the Orlando Magic in exchange for Hakim Warrick in February just hours before the trade deadline.
McRoberts started 19 games and averaged 9.3 points, 7.2 rebounds and 2.7 assists per game in 26 total contests for Charlotte. He also shot 50.5 percent from the field.
McRoberts came into the league in 2007 with the Portland Trail Blazers. He spent three seasons (2008-11) with the Indiana Pacers, his best year coming in 2010-11 when he started 51 of 72 games played and averaged 7.4 points and 5.3 rebounds per game.
He also spent a year with the Los Angeles Lakers before joining the Magic last season.
McRoberts became an instrumental part of Charlotte's offense last season under former coach Mike Dunlap. McRoberts was able to pass well from the high post and create some ball movement that had been lacking in Charlotte's offense.
It was unclear if the team would bring McRoberts back after drafting the 7-foot Zeller to play power forward. However, McRoberts showed enough in two months that the front office decided to re-sign him.