Minimizing the amount of electrical stimulation can potentially mitigate the adverse effects of muscle fatigue during functional electrical stimulation (FES) induced limb movements. A gradient projection-based model predictive controller is presented for optimal control of a knee extension elicited via FES. A control Lyapunov function was used as a terminal cost to ensure stability of the model predictive control. The controller validation results show that the algorithm can be implemented in real-time with a steady-state RMS error of less than 2°. The experiments also show that the controller follows step changes in desired angles and is robust to external disturbances.