{"name":"io.github.K-Dense-AI/labmcp-ms-data","slug":"k-dense-ai-labmcp-ms-data","title":"Mass Spectrometry Data (mzML, Bruker TDF, vendor conversion)","description":"MCP server for LC-MS data in mzML/mzMLb and Bruker timsTOF files; vendor formats via msconvert.","url":"https://mcp.market/server/k-dense-ai-labmcp-ms-data","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":26,"stars":6,"forks":0,"downloads_week":null,"last_push_at":"2026-09-26T22:47:14.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/K-Dense-AI/lab-instrument-mcps","website":"https://github.com/K-Dense-AI/lab-instrument-mcps/tree/main/servers/chemistry/ms-data","version":"0.1.1","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"labmcp-ms-data","version":"0.1.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Instrument address, e.g. serial:///dev/ttyUSB0 or tcp://192.168.1.50:5025","name":"LABMCP_ADDRESS"},{"description":"Set to 1 to use the built-in simulator (no hardware)","name":"LABMCP_SIMULATE"},{"description":"Set to 1 to disable all state-changing tools","name":"LABMCP_READ_ONLY"},{"description":"Safety limit overrides, e.g. max_temperature_c=80","name":"LABMCP_LIMITS"}]}],"tools":[{"name":"convert_to_mzml","description":"Convert a vendor file (Thermo .raw, Waters .raw, Agilent .d, SCIEX .wiff, Shimadzu .lcd, Bruker .d) to mzML with the converter the user installed (ThermoRawFileParser, ProteoWizard msconvert, or msconvert in Docker; chosen with --option converter=...). Writes a new file in the data folder. Can take minutes; fails with install instructions if no converter is set up.","write_action":false,"price_micros":0,"input_schema":null},{"name":"extract_ion_chromatogram","description":"Extracted ion chromatogram (XIC/EIC) for one or more m/z values: the summed intensity within ± tolerance (ppm or Da) in every MS1 spectrum (or another `ms_level`). For each target returns the apex RT and intensity, the apex peak's boundaries, area (intensity x min, no baseline subtraction) and FWHM, plus a downsampled trace. Reads every spectrum in the RT window, so restrict `rt_start_min`/`rt_end","write_action":false,"price_micros":0,"input_schema":null},{"name":"find_ms2_scans","description":"Find the MS2 (MSn) spectra whose precursor m/z is within ± tolerance of `precursor_mz`, optionally within an RT window and for one charge state. Returns index, scan number, RT, precursor m/z, error in ppm, charge and intensity; open any hit with get_spectrum.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_bpc","description":"Base peak chromatogram (intensity of the most intense peak per spectrum, with its m/z) vs retention time, downsampled to `max_points`. Cleaner than the TIC for spotting eluting compounds; the base-peak m/z tells you which ion dominates each part of the run.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_run_info","description":"Describe one run: instrument vendor/model/serial (when the file records them), acquisition date, software, number of spectra per MS level, retention-time and m/z ranges, polarity, centroid/profile, and whether ion-mobility data is present. The first call on a large file indexes it (can take a while); later calls are instant.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_spectrum","description":"Read one spectrum, chosen by `index`, `scan_number`, `native_id` or nearest `rt_min` (give exactly one). Returns MS level, RT, polarity, centroid/profile, precursor m/z and charge for MS2, a summary (peak count, TIC, base peak, m/z range) and the `top_n` most intense peaks; `save_path` writes the full peak list to CSV. For profile spectra the top peaks are local maxima of the profile.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_tic","description":"Total ion chromatogram (sum of all intensities per spectrum vs retention time) for one MS level, downsampled to `max_points` (keeping the maximum in each bin so peaks survive). Returns the apex, median and area; `save_path` writes every point to CSV.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_runs","description":"Find mass-spectrometry runs in the data folder and detect each one's vendor and format (mzML/mzML.gz/mzMLb, Bruker .d TDF or BAF, Agilent .d, Thermo .raw, Waters .raw folder, SCIEX .wiff/.wiff2, Shimadzu .lcd, mzXML). `readable_directly=false` means the run must be converted with convert_to_mzml before it can be analysed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"summarise_run","description":"Quick QC of a run: MS1/MS2 counts, TIC stability (CV, spray dropouts), where the signal elutes, cycle time, MS2 scans per cycle, median injection times and how often MS2 hit the maximum injection time, and precursor charge states. Returns plain-language warnings.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-27T05:27:11.464Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T05:27:11.453Z","components":{"code":{"score":25,"max":25,"notes":["9 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"labmcp-ms-data","version":"0.1.1","found":true,"license":"Apache-2.0","dependencyCount":8,"publishedAt":"2026-09-26T22:46:32.504764Z","repositoryUrl":"https://github.com/K-Dense-AI/lab-instrument-mcps/tree/main/servers/chemistry/ms-data"}],"repo":{"found":true,"owner":"K-Dense-AI","repo":"lab-instrument-mcps","archived":false,"pushedAt":"2026-09-26T22:47:14Z","stars":6,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/238572432?v=4","ownerCreatedAt":"2025-10-16T21:22:41Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/238572432?v=4&s=128","source":"github"},"presence":{"stars":6,"forks":0,"downloadsWeek":null,"license":"Apache-2.0","lastPushAt":"2026-09-26T22:47:14.000Z","score":26}}}},"grade_history":[],"reviews":[]}