Similar to the VCL data module (TDataModule), this MCK object is also created to organize a module containing only non-visual objects. The only difference from the usual form at the design stage is that the TKOLDataModule object is used instead of the TKOLForm object. The difference at runtime is that calling the function that constructs this module does not create a form, even invisible. Similarly to the MCK form, a "container" of objects is also created, and all objects specified at the development stage are built for it.
In contrast to a frame, a data module is most often used in a single copy (although this is not an axiom), and in this case it is just convenient to leave the corresponding Delphi form in the auto-created list, and refer to this object through the corresponding global variable.
In particular, it is allowed to change the order of automatic creation of forms so that the module with the data is created first. In itself, this is indifferent. It is entirely up to you to control access to objects that have not yet been created in your code.
However, do not try to use a module with data instead of a form, that is, using this object to create an application without forms will still fail. If you need an application without a form at all, then MCK in this case will not be needed at all (as well as a data module).