Nonlinear model predictive control (NMPC) is an important tool to perform real-time optimization for batch and semi-batch processes. Direct methods are often the methods of choice to solve the corresponding optimal control problems, in particular for large-scale problems. However, the matrix factorizations associated with large prediction horizons can be computationally demanding. In contrast, indirect methods can be competitive for smallerscale problems. Furthermore, the interplay between states and co-states in the context of Pontryagin's Minimum Principle might turn out to be computationally quite efficient. This work proposes to use an indirect solution technique within shrinking-horizon in the context of NMPC. In particular, the technique deals with path constraints via indirect adjoining, which allows meeting active path constraints explicitly at each iteration. Uncertainties are handled by the introduction of time-varying backoff terms for the path 2 constraints. The resulting NMPC algorithm is applied to a two-phase semi-batch reactor for the hydroformylation of 1-dodecene in the presence of uncertainty, and its performance is compared to that of NMPC that uses a direct simultaneous optimization method. The results show that the proposed algorithm (i) can enforce feasible operation for different uncertainty realizations both within batch or from batch to batch, and (ii) it is significantly faster than direct simultaneous NMPC, especially at the beginning of the batch. In addition, a modification of the PMP-based NMPC scheme is proposed that enforces active constraints via tracking.