Brown was drafted by the Boston Red Sox in 35th round (1052nd overall) in the 2000 Major League Baseball draft. He was drafted right out of Bradshaw Mountain High School. Brown however did not sign with the Red Sox until May 2001, attending Yavapai Community College in the interim.
On November 29, 2007, Brown's contract was purchased by the Boston Red Sox. Had the Red Sox not placed him on the 40-man roster, he was going to become a minor league free agent.
In the minor leagues, Brown has mainly played catcher but has also played a fair amount in the outfield and also played two games at third base in 2001 at the rookie level.
In 2008, he was invited to Spring Training and accompanied the team on the trip to Japan to open the season. On March 24, 2008 Brown was optioned Triple-A Pawtucket but remained with the team in Japan to be available for recall if either catcher Jason Varitek or Kevin Cash suffered an injury and could not play.
On June 21, 2009, Brown was called up to the Red Sox after starting pitcher Daisuke Matsuzaka was placed on the disabled list. Brown made his major league debut at catcher on June 23, against the Washington Nationals, but did not get an at-bat. He was later sent back to Triple-A Pawtucket two days later when John Smoltz was activated off the disabled list.
On September 9, 2009, he lined into a bases-loaded inning-ending double play against the Orioles in his first major league at bat.
On September 30, 2009, the day after the Red Sox clinched the 2009 AL Wild Card, Brown came into pitch the ninth inning of a blow out game against the Toronto Blue Jays. He became the first catcher to pitch for the Red Sox in recorded history. Brown only gave up one run, and struck out a batter. He obtained his first strike out before his first major league hit.
On October 3, 2009 he got his first major league hit, a home run over the Green Monster at Fenway. Brown was the 24th player on the Red Sox roster to hit a home run in the season, creating a new franchise record.
On July 18, 2010 Brown was called up to the Red Sox.
On July 26, 2010 Brown was optioned back to Triple-A Pawtucket.
On August 19, 2010 Brown was once again called up to the Red Sox, after Jarrod Saltalamacchia was placed on the disabled list.
On November 10, 2010 Brown became a minor league free agent. He was signed by the Pittsburgh Pirates on December 1 to a minor league contract with an invitation to spring training.
Brown had his contract purchased by the Pirates on May 30, 2011. He was designated for assignment on June 25. He elected free agency after the season.
On December 2, 2011 Brown signed a minor league contract with the Texas Rangers.
Brown signed a minor league deal with the Oakland Athletics in January 2014. He was released on July 21, 2014.
On August 3, 2014, he signed a minor league deal with the Cleveland Indians. He became a free agent after the 2014 season.