New York Yankees Damon Oppenheimer, the
scouting director for the New York Yankees, noticed Phelps while on a visit to Notre Dame to scout
Kyle Weiland, Phelps' teammate. Based on Oppenheimer's recommendation, the Yankees selected Phelps in the 14th round of the
2008 Major League Baseball draft. Phelps was named to the 2010
Eastern League All-Star Game. In 2011, he played for the
Scranton/Wilkes-Barre Yankees, the
Triple-A affiliate of the New York Yankees. Phelps was named the Yankees minor league pitcher of the year for 2010. He was added to the Yankees 40-man roster after the 2011 season to protect him from the
Rule 5 draft. Phelps made the Yankees'
Opening Day roster in 2012. On April 29, 2012, he was moved into the
starting rotation to replace the struggling
Freddy García. Phelps started 0–0 with a 3.57 ERA in six games before the switch. After making two starts for the Yankees, the team shifted him back to the bullpen when they promoted
Andy Pettitte. On June 14, 2012, Phelps was sent down to Triple-A after
David Robertson came off from the
disabled list (DL). Phelps returned to the team as a starter when Pettitte and
CC Sabathia were placed on the DL with injuries. During a game against the
New York Mets on May 29, 2013, Phelps surrendered 5 runs (4 earned) in the first inning and only lasted of an inning. (It was the shortest outing for any Yankees
starting pitcher at the new
Yankee Stadium.) On July 6, 2013, he was placed on the 15-day disabled list, due to a right forearm strain. On August 15, 2013, Phelps was transferred to the 60-day disabled list. On September 14, 2013 he was reinstated from the 60-day disabled list. In 2014, Phelps had a 5-5 record with a 4.38 ERA in 113 innings with 92 strikeouts and 42 walks in 32 games, 17 starts.
Miami Marlins On December 19, 2014, the Yankees traded Phelps and
Martín Prado to the Miami Marlins for
Nathan Eovaldi,
Garrett Jones, and
Domingo Germán. At the start of the 2016 season, Phelps was installed as the Marlins primary setup reliever, usually called in to pitch the eighth inning. Through 25 games, he maintained an ERA of 1.93
Seattle Mariners On July 20, 2017, the Marlins traded Phelps to the Seattle Mariners for prospects Brayan Hernandez, Brandon Miller,
Pablo Lopez, and
Lukas Schiraldi. On March 21, 2018, Phelps suffered a torn
ulnar collateral ligament in his right elbow during
spring training, and was out for the entire season, awaiting reconstructive elbow surgery.
Toronto Blue Jays Phelps signed with the Toronto Blue Jays, on January 12, 2019. While appearing in 17 game appearances, he posted a 3.63 ERA, with no game decisions.
Chicago Cubs The Blue Jays traded Phelps to the Chicago Cubs on July 30, 2019, in exchange for minor league player
Thomas Hatch. Phelps posted a 2-1 record with a 3.18 ERA, in 24 relief appearances.
Milwaukee Brewers On January 29, 2020, Phelps signed a one-year deal with the Milwaukee Brewers. In 12 relief appearances, he posted a 2-3 record with a 2.77 ERA.
Philadelphia Phillies On August 31, 2020, the Brewers traded Phelps to the
Philadelphia Phillies in exchange for Juan Geraldo, Brandon Ramey, and Israel Puello. He struggled to a 12.91 ERA in 10 games for Philadelphia.
Second stint with the Blue Jays On February 11, 2021, Phelps officially signed a one-year, $1.75 million contract with the
Toronto Blue Jays. On May 15, Phelps was placed on the 60-day injured list with a right lat strain. On May 25, it was announced that Phelps would miss the remainder of the season after undergoing surgery to repair a “significant” strain in his right lat. In 11 appearances for Toronto in 2021, Phelps recorded a minuscule 0.87 ERA with 15 strikeouts. On November 29, Phelps signed a minor league contract with the Blue Jays and was invited to spring training. On April 1, 2022, Phelps had his contract selected to the major league roster. On January 18, 2023, he announced his retirement from Major League Baseball. ==Pitching style==