For optimal reproducibility and maintainability, each of these steps should be performed by a dedicated interchangeable software module, which requires standardization of the file formats that link each workflow step. Such a comprehensive standardization effort is being undertaken by the HUPO Proteomics Standards Initiative, most notably with the development of the mzML and mzIdentML formats. However, most search engines only support their own output file format that typically does not adhere to community standards. Consequentially, building a module for downstream use of PSM files from various search engines can be cumbersome at best, and infeasible at worst. This hurdle often results in the ad hoc writing of hard-to-maintain parsing scripts that are only intended for single use. While a few open-source Python libraries exist to read and/or write various PSM file formats, such as Pyteomics, psims, and pyOpenMS, a Python library that parses PSM files into a unified high-level data structure for consistent and easy handling is missing. Here we therefore present psm_utils (), an easyto-use Python library which reads and writes various PSM file formats, but which also handles PSMs in a unified data model and API. We also used our psm_utils library to develop both a command line interface (CLI) and a web interface to easily interconvert PSM files and to retrieve basic PSM statistics, for scripting and end-users, respectively.