By construction, model predictive control (MPC) relies heavily on predictive capabilities. Good control simultaneously requires predictions that provide consistent, strong filtering of sensor noise, as well as fast adaptation for disturbances. For example, controllers seeking to regulate the blood glucose levels in persons with Type 1 Diabetes should filter noise in the continuous glucose monitor (CGM) readings, while also adapting instantly to meals that trigger an extended upsurge in those same readings. One way to do this is to switch between multiple models with distinct dynamics. When the data suggest that there is a disturbance then the relevant model is given more influence on the predictions. When there is no evidence of the disturbance the non-disturbance model is given precedence. To reduce the effect of sensor noise we include prior information about the likely timing of the meal disturbances. Specifically, we model the system as making discrete transitions to new disturbances, allowing us to include the prior information as the prior probability of those transitions. Since each transition engenders a new disturbance case, we present a method to combine the cases that minimizes error and computational load. Here we develop a set of prior probabilities for meals that encode knowledge of the time of day, the timing of the last meal, sleep announcement, and meal announcement. We use this to detect and estimate current or past meals as well as anticipating future meals. Additionally, since this application can have asymmetric actuation and costs, violating the certainty equivalence principle, we also provide estimates of the prediction uncertainty. This method reduces 2h prediction error by 45% relative to an algorithm without meal detection and 18% relative to one with meal detection. For 3h prediction these improvements jump to 66% and 30% respectively. This algorithm improves the accuracy of prediction uncertainty estimates.