 He was claimed by the Pittsburgh Pirates on June 22 and replaced Brad Eldred on their 25-man roster.On November 29, 2007, he elected to file for free agency and was signed to a minor league contract by the St. Louis Cardinals on January 10, .Phelps was promoted to the Major League roster on August 27, .