Model predictive control is a powerful methodology that involves repeatedly solving an optimization problem over a moving time horizon, using predictions of the system’s future behavior and response. Model predictive control is especially useful for handling model and parameter uncertainty in real-world applications, and it has become a wide-spread solution methodology in industry. Typically, the nonlinear system dynamics are approximated by linearized dynamics and the controller, which is designed based on the linear system, is used to control the nonlinear system. This approach requires solution of the Riccati equation. The key contribution of this paper is the development of a model predictive controller, that operates directly on the nonlinear system dynamics, for optimal spacecraft attitude control. The optimal control formulation leads to a boundary value problem where the initial costates must be iterated to solve for the optimal control that drives the system to the desired final attitude. A unique formulation of the Chebyshev-Picard boundary value solver is implemented, whereby the state and costate equations are simultaneously integrated forward and backwards respectively over the finite receding horizon. We present simulation results for an attitude maneuver using our new algorithm and compare the performance to that of the classical Linear Quadratic Regulator, as well as a shooting method that utilizes MATLAB’s fsolve and ode78.