Being able to predict water quality in river systems accurately is critical to protecting public health from harmful water quality conditions such as algal blooms or bacterial pollution, and to allowing the decision makers to respond more quickly to emergencies such as oil spills. Water quality forecasting is subject to a number of sources of uncertainty: uncertain observations, model states, model parameters, model structures, and future input forcings. Because many of the water quality model states are never observed and the models are never perfect, the initial conditions (IC) of the model may be highly uncertain. Updating the ICs of the model based on real time observations is hence potentially a cost effective way to improve the accuracy of water quality forecasts. Data assimilation (DA) is a technique that optimally combines model-simulated observations and actual observations to provide more accurate estimates of the model ICs. In this work we describe the DA procedure for the Hydrologic Simulation Program-Fortran (HSPF) based on the maximum likelihood ensemble filter (MLEF). The resulting application, MLEF-HSPF, serves as a plugin module for the Water Quality Forecast System at the National Institute of Environmental Research (WQFS-NIER) in support of operational water quality forecasting. Also presented are the evaluation results for four catchments in three different river basins in the Republic of Korea.