The move comes as a surprise after Mathews, 30, quit last July as captain in all three formats of the game following repeated bouts of injury.
Sri Lanka Cricket president Thilanga Sumathipala said the board asked Mathews to reconsider following close consultations with new coach Chandika Hathurusingha and team selectors.
Mathews said he took a few days to decide before accepting the captaincy of Sri Lanka's one-day and Twenty20 teams.
"It is a national duty, and we need stability moving into a World Cup in 18 months," said Mathews.
Sumathipala said Mathews was expected to prepare the squad ahead of the World Cup in England and Wales in 2019.
The allrounder bore the brunt of criticism after Sri Lanka's embarrassing loss to lowly-ranked Zimbabwe in a home Test series last year.
Mathews at the time described the shock defeat to Zimbabwe as the lowest point in his career and a "hard pill to swallow".
Sri Lanka's 16-member squad for the tri-nation series:
Angelo Mathews (captain), Upul Tharanga, Danushka Gunathilaka, Kusal Mendis, Dinesh Chandimal, Kusal Janith Perera, Thisara Perera, Asela Gunaratne, Niroshan Dickwella, Suranga Lakmal, Nuwan Pradeep, Dushmantha Chameera, Shehan Madushanka, Akila Dananjaya, Lakshan Sandakan and Wanidu Hasaranga.
(This story has not been edited by Business Standard staff and is auto-generated from a syndicated feed.)