This chapter describes the interface between MITgcm and the large scale optimization schemes employed in the ECCO project. The interface provides the so-called ``ECCO environment'', which is maintained alongside the kernel MITgcm code.