I would love it if mcg was working in a different way.
If you want to make a modifier you would just add an empty mcg-modifier on the stack. Click a button to open to editing UI and have live feedback.
If you want to make a mcg-controller you would add an empty mcg-controller and start editing from there.
If you want to build your own primitive you click and drag out a mcg-primitive in the viewport. click a button on the modify panel to open the ui.
You get the picture.
Maybe there could be some input and output nodes that relate to the end use as well. Modifier, controller, spline, primitive etc could all have different start nodes in there.
The biggest thing is the live feedback though! That would be amazing. The workflow right now is not great.
/Andreas