For logging, sending a UDF packet with an ADIF record should be sufficient. N1MM+ uses a proprietary format, but that could be a possibility too. However, ADIF would be the better and more compatible option.
Another option is to send UDP broadcast packets in the same format as WSJT-X. There are several code examples for various languages on GitHub. Creating and sending the WSJT-X Status and Heartbeat packets would immediately make VaraC compatible with GridTracker and other apps that already work with WSJT-X.
If you would like to discuss further and to go into the packets or see an example, drop me a line. I've done the work to receive and decode these packets for my own logging program. While you'd be doing the encoding, it's a similar principle.