listed on pypi https://pypi.org/project/mftparser/1.6.1/
CLI version can be found at https://github.com/dreadwrr/mft_parsec
A Python extension for parsing the MFT on Windows 10 / Windows 11. Returns a list of tuples for all active entries on the volume. This can be used to find new or modified files efficiently as its not necessary to walk the file system. Requires administrator privileges.
open to requests or contributors and other use cases.
pip install mftparser
drive— drive letter e.g."C:"(default"C:")only_active— ifFalse, return all entries (defaultTrue)microseconds— ifTrue, return timestamps as epoch microseconds (defaultFalse, returns NTFS ticks)cutoff— takes timestamp format"2026-05-10T07:33:12"or"2026-05-10 07:33:12"in system time. return entries only from that time onward
returns tuple with 18 fields per entry
recno, sequence_num, parent_recno, parent_sequence, in_use, path, name, size, hardlinks, is_dir, is_hardlink, has_ads, file_attribs, mod_time, creation_time, mft_mod, access_time, last_usn = results
or
(
recno, sequence_num, parent_recno, parent_sequence,
in_use, path, name, size, hardlinks,
is_dir, is_hardlink, has_ads, file_attribs,
mod_time, creation_time, mft_mod, access_time, last_usn
) = results
ntfs ticks to epoch microseconds
ntfs ticks to epoch nanoseconds
file reference number to record number and sequence
record number and sequence to a file reference number
results = mftparser.ScanVolume()
print(len(results))
for entry in results:
is_dir = entry[9]
if is_dir:
continue
...
