Free instrument-data tool

GC-MS data files, opened and converted — free

How GC-MS data is stored (Agilent .D folders and .ms files, Thermo .raw), how to extract TIC and spectra — upload to Matflow free, or parse in Python.

Formats: Agilent .D directory with .ms / .dpi files, Thermo .raw, Shimadzu .qgd, JCAMP-DX exports · For: Analytical chemistry labs

The format

What the format actually is

Where the data hides, and what a naive parser loses.

GC-MS vendors store data as instrument-specific containers: Agilent ChemStation wraps everything in an acq/drive-folder whose binary .ms holds the TIC and per-scan spectra; Thermo uses .raw; Shimadzu .qgd.

The analysis outputs everyone actually shares — TIC traces, extracted-ion chromatograms, peak tables with library-hit spectra — are trapped inside vendor software unless exported to JCAMP or CSV.

A "file" may be a whole directory tree; copying only the .ms file out of a .D folder is the classic way to lose the method metadata.

Watch out

Vendor quirks that break naive parsers

Each of these has produced a silently wrong number in a real workflow.

Agilent .ms binary layout is reverse-engineered, not documented — parser maturity varies.
Scan-to-time mapping needs the acquisition method, not just the data file.
Mass-axis calibration differences between vendors make raw spectral comparison misleading.
Open source

Do it yourself in Python

We would rather you succeed with or without us. The open-source path:

pymsfilereader (community) reads Agilent .ms and Thermo RAW via vendor DLLs on Windows.
For portable exchange: export JCAMP-DX from the vendor software, then parse with the jcamp package.
pyteomics/mzML round-trips exist for LC-MS; for GC-MS the pragmatic path is usually JCAMP or the vendor CSV export.
Upload path

What happens if you use Matflow

The parser is only step one — the value is the review and the provenance that follow.

01

Upload on the Ingestion page

Excel, CSV, PDF, SDS images and instrument files are parsed into evidence-tagged rows — the original file is retained as provenance.

02

Review before promotion

Column roles and types are proposed for a reason; correcting a mislabeled column here is the highest-leverage five minutes in the workflow.

03

Promote to a governed dataset

The accepted rows become a versioned dataset any stage can use — every row keeps its source and extraction status.

Docs: ingestion & extraction · column roles · instrument parsers

Stop parsing by hand

Upload your Agilent .D directory with .ms / .dpi files, Thermo .raw, Shimadzu .qgd, JCAMP-DX exports file to Matflow and it lands as a governed, validated dataset — original file preserved as provenance, every column documented. Free tier, no card.