MessageFoundry exists for a specific gap: standing up a few reliable HL7 v2 interfaces shouldn't require a heavyweight platform or a proprietary low-code canvas. If you can write Python, you can route, filter, and transform clinical messages — and keep that logic in version control alongside the rest of your code.
Most HL7 integration engines optimize for breadth — huge connector libraries, visual designers, enterprise footprints. That's the right tool for a large hospital integration team. But a great many real-world needs are small and specific: take ADT from system A, filter and reshape it, deliver it to system B, reliably, with an audit trail. For that, a GUI-driven platform is often more weight than the job requires.
MessageFoundry takes the opposite starting point. Configuration is code — named Connections wired together by Router and Handler functions, authored in plain Python and committed to git. There's no monolithic "channel" object hiding the wiring; the graph you write is the system that runs. Reliability comes from a transactional inbox/outbox on SQLite, so at-least-once delivery, retries, and replay are built in without a separate broker.
The minimum reliable engine is in place: the code-first Connection / Router / Handler model and config loader, a durable store-as-queue with the retry / dead-letter / replay pipeline, tolerant peek plus opt-in strict validation, MLLP and file connections with correct framing and ACK/NAK, and the localhost API. Authentication, RBAC, a tamper-evident hash-chained audit log, and AES-256-GCM encryption-at-rest are built. The message store is pluggable across SQLite (default), SQL Server, PostgreSQL, MySQL, and Oracle.
The tooling ships too: a PySide6 admin console, a VS Code extension with setup wizards, validate-on-save, a graph view, and a PHI-safe (code-only) AI assistant, AI-assisted migration from other engines, and a full test harness. Commercial 24×7 support and consulting are available.
On the roadmap: additional transports (TCP, HTTP, database) and REST / FHIR destinations, a database poller, a plugin layer, sandboxed transformer steps, enrichment / lookup tables, alerting, a de-identification framework, centralized log redaction, retention/purge enforcement, MLLP-over-TLS with outbound allow-listing, and managed BAA-backed AI for PHI-scoped assistance. See the repository's roadmap for the current state.
MessageFoundry is licensed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later). Running a modified version as a network service triggers the AGPL's §13 obligation to offer source to your users. A separately-licensed commercial edition may be available from the maintainer.
Contributions are welcome. A signed Contributor License Agreement is required before a pull request can be merged. The best place to start is a GitHub issue describing what you'd like to change.