After yielding six runs in four innings in his first start, Weaver played a key role in the Cardinals World Series win. He won important games for the Cardinals in the final weeks of the season, helping them win the National League Central Division, and he started and won Game 2 of the 2006 National League Division Series. Weaver started and was the losing pitcher for Game 1 of the National League Championship Series against the New York Mets on October 12, 2006. He pitched five scoreless innings before giving up a two-run home run to Mets center fielder Carlos Beltrán in the sixth inning; as the Cards lost 2-0.