The 26-year-old Brown will be the sixth Cardinals player to make his major league debut this season. He was batting .351 with 11 home runs and 41 RBIs in 50 games at Memphis.
Craig, a right fielder, has a bruised right knee. He left Tuesday's game in Houston after running into a padded railing while trying to catch a foul ball in the first inning. The move is retroactive to June 8.