Roberts made his major league debut on July 2, 1999, with the Detroit Tigers against the Minnesota TwinsatHubert H. Humphrey Metrodome with 12,033 people attending the game.[3] Roberts relieved Will Brunson in the sixth inning, pitching one and one-third innings.[3] The Tigers lost the game 11–4.[3]
Roberts was released by the Tigers on February 1, 2000, and immediately joined the Cincinnati Reds as a free agent.[4] Roberts was granted free agency on October 18 and signed with the Orioles on November 16.[4] In the 2002 baseball season, Roberts was most successful in limiting home runs,[5] only allowing five home runs in 75 innings. His home run rate was roughly one home run allowed for every eighteen innings pitched, or 0.6 home runs per nine innings.[6] Roberts played three seasons for the Orioles before being granted free agency on October 17, 2003.[4] On January 20, 2004, Roberts signed with the Pittsburgh Pirates as a free agent.[4] He played his final baseball game with the Pittsburgh Pirates on August 13, 2004, retiring just seven days later.[4] The New York Mets brought Roberts in on a minor league deal prior to the 2005 season, but he did not play for them.[2]