The 33-year-old Holland was designated for assignment by the Arizona Diamondbacks last week. He was 1-2 with a 4.54 ERA and 17 saves in 22 chances this season.
He lost the job as Arizona's closer after a blown save in late July. His ERA was 2.33 at the end of June but then began climbing as he allowed at least one earned run in seven of his last 13 appearances for the Diamondbacks.
"We took the role away from him -- we thought it would take some pressure off him. But it didn't get better,'' Arizona manager Torey Lovullo said when the team let Holland go.
Holland, a three-time All-Star who led the National League in saves in 2017 with 41 for the Colorado Rockies, was 2-0 with a 0.84 ERA in 24 games for the Nationals last season.
Washington is leading the NL wild-card race even though its bullpen has been a problem throughout this year, particularly in the eighth inning. Its 6.05 ERA entering Tuesday is the worst in the NL.
After Tanner Rainey allowed two runs in the eighth and closer Sean Doolittle gave up two more in the ninth as a 7-2 cushion became a 7-6 victory over the Cincinnati Reds on Monday night, Doolittle acknowledged feeling worn down.
He already has a career-high 27 saves, despite blowing five chances, and has finished a career-high 47 games. Doolittle has pitched in five of Washington's past seven games.
"I'm starting to feel it a little bit,'' Doolittle said. "These are the nights where you've got to dig deep and grind it out.''
The Nationals repeatedly have cycled through relievers in a bid to fix things, including getting rid of two offseason acquisitions the club hoped would offer late-game assistance: Trevor Rosenthal and Kyle Barraclough.
Among the pitchers added during the course of the season are Fernando Rodney, Jonny Venters and three trade-deadline pickups: Daniel Hudson, Hunter Strickland and Roenis Elias, who is currently on the injured list.
MLB Network first reported the Nationals' agreement with Holland.
The Associated Press contributed to this report.