Chavez's new deal is pending a physical.
Arizona also reached agreement on a one-year deal with catcher Wil Nieves, according to multiple reports.
The 34-year-old Chavez hit .281 with 16 homers in 278 at-bats for the New York Yankees, playing first and third base and at designated hitter.
Chavez was a six-time Gold Glove third baseman with Oakland before injuries limited him for several years. But he found success in a limited role with New York this season, seeing more playing time after Alex Rodriguez broke his hand in late July.
The 35-year-old Nieves, who wasn't tendered a contract by Arizona last week, batted .306 with a home run and three RBIs in 16 games for the D-backs in 2012.
Arizona claimed him off waivers from Colorado on Aug. 6. Nieves was designated for assignment by the Rockies after hitting .298 with one homer in 16 games with the Rockies and .306 with three homers in 111 at-bats for Triple-A Colorado Springs.
Information from The Associated Press was used in this report.