{"name":"io.github.K-Dense-AI/labmcp-thermo-iapi","slug":"k-dense-ai-labmcp-thermo-iapi","title":"Thermo Orbitrap (Instrument API)","description":"MCP server adapter for Thermo Fisher Orbitrap mass spectrometers via the licensed Instrument API.","url":"https://mcp.market/server/k-dense-ai-labmcp-thermo-iapi","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":37,"stars":6,"forks":0,"downloads_week":167,"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/thermo-iapi","version":"0.1.1","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"labmcp-thermo-iapi","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":"cancel_custom_scans","description":"Cancel any pending custom scan and its processing delay (IAPI CancelCustomScan).","write_action":true,"price_micros":0,"input_schema":null},{"name":"cancel_repeating_scan","description":"Cancel the repeating scan set with set_repeating_scan (IAPI CancelRepetition).","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_instrument_status","description":"Report the instrument model, IAPI service/instrument connection, system mode and state (On/Standby/Off; Running/ReadyToDownload/...), whether an acquisition can be paused or resumed, the IAPI licence where the API exposes it, requested readbacks, the latest scan status log (vacuum, source) and how many scans have arrived.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_possible_scan_parameters","description":"List the scan parameters this instrument accepts for custom and repeating scans (IScans.PossibleParameters): name, allowed range or choices, default and help. The set depends on the model, licence and Tune version.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_recent_scans","description":"Return the most recent scans received from the instrument (oldest first), optionally only one MS order or one custom scan's access id: scan number, MS order, precursor m/z, AGC target, injection time and the most intense centroids. Scans only arrive in On mode.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pause_acquisition","description":"Pause the running acquisition (IAPI Pause). Fails if the instrument reports it cannot pause.","write_action":false,"price_micros":0,"input_schema":null},{"name":"resume_acquisition","description":"Resume a paused acquisition (IAPI Resume). Sample consumption continues.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_repeating_scan","description":"Define or replace the scan the instrument repeats when no method or custom scan is running (IAPI CreateRepeatingScan/SetRepetitionScan). Values are validated like submit_custom_scan. Cancel with cancel_repeating_scan.","write_action":false,"price_micros":0,"input_schema":null},{"name":"start_acquisition","description":"Start an acquisition with the instrument's current settings (IAPI StartAcquisition), recording to a raw file. This consumes sample. The instrument must be On; an acquisition must not already be running. Stop it with stop_acquisition. scan_count and until_stopped acquisitions are cancelled automatically after max_acquisition_duration_s.","write_action":false,"price_micros":0,"input_schema":null},{"name":"stop_acquisition","description":"Stop the running acquisition (IAPI CancelAcquisition), by default also cancelling custom and repeating scans, and optionally switch the instrument to Standby (switch back to On in Tune). Every step is attempted even if an earlier one fails; failures are reported.","write_action":false,"price_micros":0,"input_schema":null},{"name":"submit_custom_scan","description":"Place one custom scan to run next (IAPI CreateCustomScan/SetCustomScan); unset values fall back to the instrument's defaults. Every value is checked against PossibleParameters and the safety limits, and calls are rate-limited, before anything is sent. Fetch the result with wait_for_scan(access_id=running_number).","write_action":true,"price_micros":0,"input_schema":null},{"name":"wait_for_scan","description":"Wait for the next scan that arrives after this call (optionally of one MS order, or the result of a custom scan by its access id) and return it. For a custom scan placed with submit_custom_scan, a result that arrived since it was placed is returned at once. Returns found=false after timeout_s if nothing matching arrived (e.g. the instrument is in Standby).","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-27T05:27:11.762Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T05:27:11.747Z","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-thermo-iapi","version":"0.1.1","found":true,"weeklyDownloads":167,"license":"Apache-2.0","dependencyCount":2,"publishedAt":"2026-09-26T22:46:31.041846Z","repositoryUrl":"https://github.com/K-Dense-AI/lab-instrument-mcps/tree/main/servers/chemistry/thermo-iapi"}],"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":167,"license":"Apache-2.0","lastPushAt":"2026-09-26T22:47:14.000Z","score":37}}}},"grade_history":[],"reviews":[]}