How smartest integrate data from another app to home assistant

I’m working on an open‑source wine cellar app (Cellarion – https://cellarion.app) and want to integrate it with Home Assistant.
I only want to expose a few selected data points — not the full app.
Is a limited API + custom integration the preferred approach, or is MQTT/add‑on better for partial integrations?
Looking for best practices.

There are many ways to integrate with HA.
It can be websockets, restful, MQTT, your own integration or a bunch of other ways.

MQTT is a common way, because it is not a standard that is tied to HA, so other apps could use it too.
HA have a standard for MQTT that allow automatic creation of devices if you like, but it is still just MQTT.

Cellarion is open source and uses the MongoDB database in a docker container to run. You could use the native HomeAssistant SQLite database to replicate all Cellarion database calls (inefficient) or the Bottle Export (vailable in JSON and CSV) to get your data across, and run it regularly to ensure it is up to date. This would be an inefficient waste of resources.

Ideally you want only one copy of your wine database, and both Cellarion and HomeAssistant UI User Interfaces accessing and updating the same wine database on the docker environment.
Cellarion uses Anthropic Claude for various functions and your way in could be through the Traefik reverse proxy interface, maybe using MQTT as @WallyR suggested…
Achievable, yes. Quick vibe coding by asking Claude, maybe a lot of effort. You’d have to modify code or have addons in both environments Keeping the two in step every time there is a change, your challenge.