An open-source desktop application for analyzing targeted mass spectrometry (LC/GC-MS) data. Process raw files, trace compounds, compare spectra, and quantify β all locally on your machine. See the wiki for full documentation.
- Trace compounds in raw mass spectrometry data via extracted ion chromatograms (XICs)
- Analyze and process LC/GC chromatograms with automatic baseline correction and peak detection
- View MS spectra scan-by-scan at any retention time
- Overlay and compare multiple files simultaneously on the same plot
- Look up compound m/z values from PubChem by name
- Compute theoretical isotopic patterns from molecular formulas and overlay on spectra
- Predict b/y fragment ions for peptide sequences
- Customize m/z integration boundaries per compound via interactive dialog
- Select from 13 adducts (positive and negative) for m/z calculation
- Quantify concentrations using built-in linear regression calibration
- Look up MS2 spectra on-demand from mzML files for compound verification
- Export plots (SVG, TIFF, PNG, JPG) and data (CSV)
- High-performance mzML parsing via a custom lxml-based reader
- Vendor-agnostic: accepts
.mzML,.txt, and.csvfiles - Runs on Windows, macOS, and Linux
Pre-built executables for Windows, macOS, and Linux are available under Releases.
- Windows: If Windows Defender blocks the app, go to Protection history, find the LC-Inspector entry, and click Restore. If "Windows protected your PC" appears, click More info then Run anyway.
- macOS: Remove the app from quarantine:
xattr -d com.apple.quarantine /path/to/app.app. Alternatively, go to System Settings > Privacy & Security and click Open Anyway.
-
Clone the repository
-
Install Python 3.13+ and uv
-
Install dependencies:
uv sync --frozen
-
Run the application:
python lcmspector/main.py
- Drag and drop your mass spectrometry and/or chromatography files into the main window
- Choose a compound list or define your own (compound names are automatically looked up on PubChem)
- Click Process
- View results: TIC, XICs, labelled chromatograms, and raw MS scans
- Verify compounds with on-demand MS2 spectrum lookup
- Quantify using calibration standards
Docker is an alternative if you prefer not to install the app directly. Currently Linux-only (requires X11).
You need Podman or Docker Engine (not Docker Desktop β it cannot forward X11 from its VM).
# Build
podman build -t lcmspector .
# Run (Podman)
xhost +local:
podman run --rm --security-opt label=disable \
-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix lcmspector
xhost -local:
# Run (Docker Engine) β no --security-opt needed
xhost +local:
docker run --rm -e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix:/tmp/.X11-unix lcmspector
xhost -local:To access local files, mount your data directory: -v /path/on/host:/data.
Contributions are welcome. Open an issue to report bugs or suggest features (please attach logs for bug reports), or submit a pull request with your changes.
LCMSpector is distributed under the MIT License.
It includes MS/MS libraries from the MoNA database, distributed under the CC BY 4.0 License. No changes are made to the library content.

