
OpenReadout
io.github.openreadoutv0.1.0更新于 Oct 3, 2026
Read raw lab-instrument files offline: metadata, previews, integrity checks, open-format export.
概览
离线读取实验室仪器原始文件,为 AI 助手提取元数据、预览、完整性检查并导出开放格式。
- 功能
- OpenReadout 可解码显微镜、质谱仪、细胞仪、电生理设备等 90 多种仪器格式的原始文件。其 MCP 服务器通过 JSON-RPC 提供 15 个工具,例如 openreadout_info、openreadout_check、openreadout_preview、openreadout_export 和 openreadout_analyze。它能返回结构化 JSON 元数据、渲染 PNG 预览、校验文件完整性,并导出为 OME-TIFF、OME-Zarr、mzML、NWB、CSV、Parquet 等开放格式。
- 适用场景
- 当助手需要在没有厂商软件的情况下查看、校验、预览或转换专有仪器数据时使用。适合研究人员在任何电脑上打开文件、助手回答采集元数据问题,以及流水线索引或监控实验室共享目录。
- 运行要求
- 作为本地进程在用户机器上运行,仅支持桌面端。需先安装 openreadout 二进制文件,再用 openreadout mcp --install claude-desktop 等命令注册 MCP 服务器。可通过 npm、cargo、Homebrew 或单一自包含二进制文件获取。未声明账户、API 密钥、环境变量或网络访问需求。
安装
在 SourceWeft 中
- 打开 控制台中的 OpenReadout,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
OpenReadout
OpenReadout is an open-source reader for lab-instrument files, designed for AI agents.
Give AI agents full access to raw data from microscopes, mass spectrometers, cytometers, electrophysiology rigs, and 90+ other instrument file formats — in one command.
Open-source. Single binary. No vendor software. No dependencies. No network access. Works everywhere.
OpenReadout makes data stored in proprietary instrument file formats readable: it pulls out the metadata, images, traces, spectra, and tables as structured JSON and renders previews so your agent can see and understand the data. Every format is validated against real data and independent libraries.
[CI] [Docs] [License: MIT OR Apache-2.0]
📖 Docs: openreadout.github.io/openreadout | 🧪 Try it: browser demo
[Sagittal section of a whole mouse, trichrome stained, decoded from a Zeiss CZI slide scan]
A whole-mouse section from a 3.7 GB Zeiss slide scan: 190,309 × 69,378 pixels at 0.22 µm.
—
Microscopy
—
Spectra, Traces, and Curves
Everything above was decoded by OpenReadout from raw files — no vendor software, no conversion.
For AI Agents — Get Started in One Line
Paste this into your AI agent's chat — it will read the skill file and install everything:
That's it. The skill file tells the agent how to install the binary and how to use every command.
For Humans
Option A — Browser: Open the browser demo and drop a file on it. It runs OpenReadout compiled to WebAssembly inside the page; nothing is uploaded.
Option B — CLI: Install the binary (see Installation), then connect it to your agent:
Your agent can now open, check, plot, and convert instrument files on your behalf.
For Developers — See It Live in 30 Seconds
That's it. The same commands work on a CZI, an ND2, a Thermo RAW, an ABF, or any of the other formats.
Quick Start
Why OpenReadout?
What used to take vendor software or a different library for every format:
Now takes one command, for all of them:
What OpenReadout can do:
- Inspect images, channels, traces, spectra, tables, and metadata -- in plain text or structured JSON
- Check files for truncation, missing planes, and damaged structure -- exit code 4 when a file is corrupt
- Export to OME-TIFF, OME-Zarr, mzML, NWB, CSV, Parquet, Arrow, JCAMP-DX, Allotrope ASM, and RDML -- every export read back and verified
- Preview image planes, traces, spectra, and plate heat maps as PNG
- Analyze chromatographic peaks, plate assays (IC50, standard curves), qPCR (Cq, ΔΔCq), NMR peaks, patch-clamp features, spikes, and flow-cytometry gates -- with documented methods
- Batch over whole directories, index lab shares, and watch running acquisitions
The format list has all 96 formats and their known gaps.
Use Cases
For Researchers:
- Open instrument files on any computer, without the acquisition software
- Convert a folder of raw files to OME-Zarr, mzML, or NWB for analysis and sharing
- Verify that files copied off an instrument PC are complete
For AI Agents:
- Answer questions about a file: channels, pixel size, objective, acquisition time, scan count
- Extract metadata, traces, spectra, and tables as JSON
- Run documented analyses (peak areas, IC50s, Cq values) and report the method used
For Core Facilities and Pipelines:
- Index a lab share into searchable Parquet tables with
indexandsearch - Watch instrument directories and flag stalled or damaged acquisitions with
watch - Run in Nextflow, Snakemake, and Galaxy pipelines (
integrations/)
Installation
Ships as a single self-contained binary. No Java, no Python, no vendor DLLs -- nothing else to install.
Docker, Nix, cargo-binstall, and the other channels are on the install page.
Verify installation: openreadout --version
AI Integration
MCP Server
Built-in MCP server — register with one command:
Windsurf, Zed, Continue, and Cline are supported too. The server exposes 15 tools (openreadout_info, openreadout_check, openreadout_preview, openreadout_export, openreadout_analyze, ...) over JSON-RPC — no shell access needed.
Claude Code Plugin
Installs the MCP server and the skill together:
Gemini CLI Extension
Codex Plugin
The Claude Code plugin, the Gemini CLI extension and the Codex plugin each add the skill and the MCP server. They come from the small openreadout/agent-plugins repository, which each release updates. The server runs the openreadout binary from your PATH, so install it first.
Agent Skill
The skill source is in skills/openreadout.
Why your agent will thrive on OpenReadout
- Deterministic JSON output — every command supports
--jsonwith published schemas. No regex parsing, no scraping stdout. - Fixed exit codes —
0ok,1error,2usage,3unknown format,4corrupt file,5I/O,6unsupported feature. Agents branch on the code, not on the message. - Self-healing errors — every error carries a
hintthat says what to do next. Agents self-correct without human intervention. - Assurance on every answer — each result says whether files like it were validated against an independent reader. Agents know when to double-check.
- Built-in preview renderer —
previewwrites a PNG the agent can look at. Agents can see the image, trace, or plate they are reasoning about. - Cheap metadata —
inforeads headers only, so a 100 GB file costs the same as a small one.--onlyreturns just the fields asked for, saving tokens. - Safe by default — inputs are opened read-only and nothing connects to the network.
Error Recovery
The agent follows the hint, lists the images, and picks the right index.
Python and R
Python — pip install openreadout returns metadata as dicts and pixels as NumPy, dask, or xarray arrays, with plugins for bioio and napari. See the Python guide.
R — the R package returns arrays and data frames. See the R guide.
Comparison
Validation
Readers are tested against about 1,500 public instrument files. Each file's geometry, metadata, and plane hashes are compared with independent libraries (czifile, nd2, liffile, Bio-Formats, FlowIO, pyABF, and others), and pixel data must match exactly. See Validation.
Every reader was written from public files and permissively licensed documentation — no vendor SDKs, headers, DLLs, or GPL source code. See the clean-room policy.
Documentation
The documentation has guides for every command and format:
- Getting started: Install | Your first file | Reading the JSON output
- Reference: Commands | MCP tools | Formats
- Guides: AI agents | Python | R | Recipes | Batch tables
- A file that does not work: run
openreadout check --report FILEand attach the bundle to a new-variant issue. It contains no data values, sample names, or paths.
Privacy
OpenReadout runs on your computer, makes no network connections and sends no telemetry. See PRIVACY.md.
License
Licensed under either the Apache License 2.0 or the MIT license, at your option. OpenReadout is not affiliated with any instrument vendor; see TRADEMARKS.md.
Bug reports and contributions are welcome on GitHub Issues. See CONTRIBUTING.md, and read the clean-room policy before working on a reader.
Images and demo files come from the public test corpus (corpus/manifest.toml), used under their licences: mouse section, Zeiss sample images for Bio-Formats (Zenodo 10577621, CC-BY-4.0); Convallaria lambda scan, Maria Manuela Azevedo (Zenodo 14976703, CC-BY-4.0); BaTiO3 STEM, Rama Vasudevan and Gerd Duscher (Zenodo 8190744, CC-BY-4.0); H&E QPTIFF, PerkinElmer via the OME sample images (CC-BY-4.0); qPCR, the RDML R package (MIT); MS2, ProteoWizard test data (Apache-2.0); HPLC, cheminfo (MIT); EPR, EasySpin (MIT); patch clamp, pyABF (MIT); GC-FID, entab (MIT); terminal demo, Allen Institute for Cell Science (BSD-3-Clause). demo.tape regenerates the demo.
If you find OpenReadout useful, please give it a star on GitHub — it helps others discover the project.
来源:README.md,提交 c13bc7a
工具
0版本历史
1- v0.1.0最新Oct 3, 2026
