We don't know if a particular storm will produce a tornado so the truth is we really don't know what causes a tornado. We do know the necessary conditions needed for tornado formation.
A tornado is a powerful column of winds that rotate around a center of low pressure. The winds inside a tornado spiral inward and upward, often exceeding speeds of 300 mph. For a thunderstorm to produce a tornado requires warm humid air near the surface with cold dry air above. These conditions make the atmosphere very unstable, in the sense that once air near the ground is forced upward, it moves upward quickly and forms a storm. Severe thunderstorm conditions also include a layer of hot dry air between the warm humid air near the ground and the cool dry air aloft. This hot layer acts as a lid that allows the sun to further heat the warm humid air -- making the atmosphere even more unstable.
To form a tornado, the host thunderstorm must also rotate. From below, a rotating cloud base looks like someone is stirring the storm from above. This happens in a storm when wind at the ground is moving in a different direction and speed than the air above. The change in wind speed and direction with height is known as wind shear. This wind shear develops the rotation in the thunderstorm needed for tornado formation.
At this time of year, warm moist winds from the Gulf of Mexico move northward while above the jet stream warm dry winds from the Great Plains move eastward, providing the necessary conditions for severe thunderstorms.