The Nationals announced the move Monday night.
The 27-year-old Reynolds made his major league debut with the Mets in 2016. He hit .230 with one homer and five RBI in 68 games last season.
Reynolds can play all four infield positions and both corner outfield spots.
The Oklahoma native was selected in the second round of the 2012 draft out of the University of Arkansas.