Frazier's contract was selected by the Pirates on Thursday, Rob Biertempfel of The Athletic reports.
Frazier returned to the Pirates in late March after he initially opted out of his contract, and he'll now join the major-league roster. The 35-year-old appeared in 45 games with the Mets and Rangers last year, slashing .236/.302/.382 with four home runs and 12 RBI. Ke'Bryan Hayes (wrist) recently suffered a setback in his recovery, so Frazier could carve out a nice chunk of playing time in the near future.