DicomFlow app icon

DicomFlow

Test DICOM networking. View DICOM images. A native macOS toolbench for PACS integration engineers — free and open source.

v2.0 macOS 26+ · Apple Silicon SwiftUI + Metal DCMTK in-process MIT license

Signed & notarized. Also on Homebrew: brew install --cask krasnov777/tap/dicomflow. Or build from source with xcodegen + xcodebuild — no certificates needed.

A full DICOM network tester

Every protocol a PACS integration touches, in one sidebar — with a decoded traffic timeline underneath.

🔌 DIMSE networking

  • C-ECHO, C-STORE, Query/Retrieve (C-FIND / C-MOVE / C-GET)
  • Modality Worklist (MWL C-FIND)
  • Built-in Test SCP — a mini-PACS that receives studies
  • Negotiation Probe: see exactly which presentation contexts a peer accepts
  • DICOM TLS (BCP 195) on every outgoing connection

🌐 Web & messaging

  • DICOMweb: QIDO-RS, WADO-RS, STOW-RS
  • FHIR ImagingStudy queries
  • HL7 v2 over MLLP — send messages and run a listener
  • Keychain-stored credentials, per-server

🔍 Protocol Inspector

  • Live decoded DICOM-traffic timeline for every operation
  • Imports .pcap / .pcapng captures and dissects the PDUs
  • Association, context, and DIMSE message breakdown

🏷️ Files & tags

  • Tag Inspector, Editor, and two-file Compare (tag diff)
  • Anonymizer — PS3.15 Basic Confidentiality Profile
  • Redact Pixels: burned-in text detection via Vision OCR
  • Conformance Validator with full IOD module checks
  • DICOMDIR reader, dataset dump, synthetic study generator

A GPU-powered viewer

Not a diagnostic workstation — a fast, keyboard-driven way to actually look at the data you're moving around.

🩻 2D & MPR

  • Axial / coronal / sagittal slices, right-drag window/level
  • Orthanc-style 2×2 MPR with a linked crosshair
  • HU probe, cine, invert, rotate/flip, multi-frame stacks

🧊 3D volume rendering

  • Five Metal reconstruction modes: MIP, MinIP, X-Ray/DRR, Volume, Iso-Surface
  • Arcball or turntable rotation, clip planes, view presets
  • Transfer-function gallery, movie export (sweep & turntable)

📐 Measurements & SR

  • Persistent distance, angle, and ROI tools with HU histogram
  • Structured Reports rendered as readable text
  • PNG export of any view

🤖 MCP server for AI agents

dicomflow-mcp exposes the same native engine to AI agents over the Model Context Protocol — echo a PACS, query studies, retrieve, inspect tags, render slices — and drive the app itself: see what's open in the viewer, open studies, navigate slices and window/level, straight from Claude or any MCP client.

Fully native. Nothing to install around it.

One sandboxed process: SwiftUI for the UI, Metal for rendering, and DCMTK statically linked in-process through an Obj-C++ bridge. No Python, no subprocesses, no runtime dependencies.

SwiftUI Metal DCMTK 3.6.9 OpenJPEG 2.5 (JPEG 2000) OpenSSL 3.6 (TLS) Vision OCR XcodeGen App Sandbox

Build from source

The repo builds unsigned out of the box — no Apple certificates required.

# one-time: build the native codecs (~3 min)
bash native/build-dcmtk.sh
bash native/build-openjpeg.sh

# generate the Xcode project and build
xcodegen generate
xcodebuild -project DicomFlow.xcodeproj -scheme DicomFlow \
  -configuration Debug -derivedDataPath build build

open build/Build/Products/Debug/DicomFlow.app