"OctoPrint without the server" is like saying "fondue without the cheese", in my humble opinion. But I am rather opinionated now that I'm older.
I can't honestly speak for foosel but my take on OctoPrint is that it's a fairly robust service which offers an HTTP/HTTPS interface for both browsers and web API clients. It's also a pretty awesome platform which allows upgrades in place, the development and addition of plugins of all kinds. It's quite good at interfacing with Marlin- and Repetier-based printer boards. It houses an embedded Cura slicer and Gcode visualizer. The wealth of existing web-based plugins allow IoT solutions too easy to even mention.
But all this is a framework that's rather tightly involved with that webserver, at least that's my take on it.
Python is definitely involved. I doubt that you can strip away
haproxy, the webserver, the Plugin Manager and all the other plugins and have it still function. But foosel's the last word on that one.
The OPC-UA is 14 documents at over 1200 pages in length. Inside my head is a little chart that I go by and it reasonably suggests that nothing will ever succeed that requires 1200 pages to describe it in the world of open source. I haven't really thought about it until now but the chart should be labeled KISS.
You might consider using the Python language to spin up your own project, talk to a printer controller board and present itself as an OPC-UA node. Start from scratch. Scaffold something which connects into the network and which talks "Marlin" to a printer board.
npmjs for OPC = zero hits
github python opcua code = perhaps 25