In September Omir Santos was called up from the Norfolk tides and was given number 67. Santos played in 11 games and had 10 at-bats, recording one hit. In that season he caught nine games, starting three.
New York Mets
On April 17, 2009, Santos was called up to the Mets to replace the injured Brian Schneider after starting the season with the AAA Buffalo Bisons. On April 27, 2009, Santos hit his first career home run, a grand slam off the Florida MarlinsAníbal Sánchez. It was the first grand slam hit in Citi Field. The home run also produced his first career RBI. On May 23, 2009, Santos hit a two-run go-ahead home run off Red Sox closer Jonathan Papelbon at Fenway Park in the ninth inning with two outs, which was the difference maker in the game. On May 29, 2009, against the Florida Marlins, he hit a game-tying home run in the fifth inning and a game-winning single in the bottom of the 11th. Soon after the game, the Mets traded their other backup catcher Ramón Castro to the Chicago White Sox for pitcher Lance Broadway, ensuring that Santos stayed with the team as the backup catcher to Brian Schneider. On November 25, 2009, Santos was named on the 51st annual Topps All-Star Rookie team. Santos finished the season with seven home runs, 40 runs batted in, 73 hits and a.260 average. On February 20, 2010, the Mets signed catcher Rod Barajas to a Major League deal. With Henry Blanco serving as the backup catcher, Santos began the season in the minor leagues. On March 7, 2010, Santos hit an inside-the-park grand slam in spring training. On June 4, 2010, the Mets called up Santos to back up the backup catcher Henry Blanco who was a "bit banged up". He was optioned back to the minors on June 7. On November 10, 2010, Santos refused his minor league assignment and became a free agent.
Detroit Tigers
During the 2010 MLB Winter Meetings, Santos signed a minor league contract with the Detroit Tigers. He was promoted to the Tigers on April 19 and was given number 18 to fill in for injured backup catcher Victor Martínez. On April 19 against the Seattle Mariners Santos got a pinch hit single. The next day he got the start where he went 0 for 4 and caught nine innings. Santos was recalled again in August to replace Miguel Cabrera who was attending the birth of his child. The Tigers used Cabrera's paternity leave as an opportunity for Santos to catch a game in place of Alex Avila, who had started the previous 18 games. Regular backup catcher Víctor Martínez had been limited to designated hitter due to injury. After being outrighted to Triple-A in 2011, Santos was given an invitation to spring training as a non-roster player. He did not make the opening day roster, but was called up to the Tigers on May 30, 2012 after injuries to Alex Avila and Gerald Laird. On June 2, 2012, Omir Santos had a walk-off sacrifice fly to beat the New York Yankees. On June 6, 2012, Santos was designated for assignment. On June 8, 2012 Santos declined the minor league assignment and became a free agent.
On June 13, 2012 Santos signed a minor league contract with the Colorado Rockies.
Cleveland Indians
On February 5, 2013 Santos signed a minor league contract with the Cleveland Indians. Santos started the 2013 season with the Triple-A Columbus Clippers, and was called up to the Indians on April 9, 2013. He appeared in one game for the Indians before being optioned back to Columbus a week later. On July 14, Santos was outrighted off the 40-man roster to Columbus. Santos declared free agency on October 3, 2013.