This document provides an overview of model predictive control (MPC) and demonstrates its implementation in MATLAB using a continuous stirred tank heater (CSTH) model. It discusses key MPC concepts like observability, controllability, designing an observer, and formulating the optimization problem. MATLAB files and GUIs are also described that allow simulation and analysis of MPC behavior compared to traditional PID control.