MCAP
SoftwareRobot-log container format and multi-language libraries for recording typed timestamped messages, with a separate inspection CLI. [1] [3]
Installation & first result →Official websiteGetting started
- For
- Robotics developers handling ROS or other timestamped sensor/message recordings [1]
- Source rights
- Named licenses are documented by part. Review licenses
- Unknowns
- operating system, compute requirements not fully established. Review gaps
Source researched · Not tested by us
Sources checked · Research details
Overview
MCAP is a logging format and a set of implementations for storing timestamped messages with their schema and channel information. For a robotics workflow, it helps separate the recording container from the encoding of the messages inside it. Choosing an MCAP file extension does not establish that another tool can interpret every ROS, Protobuf or custom message in that file. [1] [3]
Is this for you?
- Known limitations
- A common container does not ensure every reader can decode every message schema.
- Compression support, corruption/recovery behavior and real-world durability were not tested.
Editorial scope assessment from the cited implementation/documentation; no execution or compatibility test.
What you need
Installation & first result
Open the upstream getting-started guide [1]
- Use the SDK for the chosen language or the separately documented MCAP CLI; start with a sample recording you can decode.
- Preserve exact source/dependency/model versions and evaluate the selected workflow before connecting physical hardware or reusing data.
Editorial scope assessment from the cited implementation/documentation; no execution or compatibility test.
Hardware, models & data
Project notes
Pick a library or an inspection workflow
The repository supplies language-specific readers and writers, together with separate ROS support packages. It also documents a command-line tool for inspecting, merging and splitting recordings. A useful first step is to choose the implementation for your application's language, then identify the schema/encoding support needed by the downstream reader. Begin with a known sample recording rather than assuming a viewer can decode an arbitrary robot log. [1] [4]
For the documented command-line route, the README offers brew install mcap. For Python, its package table names mcap; separate directories provide mcap-ros1-support, mcap-ros2-support and mcap-protobuf-support. Select the needed decoder alongside the core library; those support packages' requirements and interoperability were not evaluated here. [1] [4]
The selected Python writer source distinguishes record structures such as schemas, channels, messages, chunks, indexes and the footer. Its Writer defaults to ZSTD compression, so that selection needs the zstandard library; the source raises UnsupportedCompressionError when it is missing. LZ4 similarly needs lz4, while NONE is an explicit uncompressed option. Check the chosen writer mode and downstream consumer rather than assuming an importable core package supplies every compression path. No performance or reader compatibility test was run. [3]
Evaluate the storage behavior you need
Use the documented SDK and CLI routes to investigate the recording structure and decoding path. Before using a log as experiment evidence, determine which timestamps, message definitions and metadata must survive your own writer/reader pipeline. Corruption recovery, partial writes, durability and sustained recording throughput require tests of that pipeline; none were performed here. [1] [3]
The repository's root license is MIT. This source review does not license the sensor data placed inside a log or establish rights to redistribute someone else's recordings. No SDK installation, file conversion, live robot capture or benchmark was run. [2]
What we checked
Source research only. Selected implementation/model text, repository tree and license declarations were inspected. No upstream compilation, dependency installation, simulator, network/USB/device integration, data collection, benchmark or physical robot test was performed. Source files are linked rather than redistributed; external services and paid products are not endorsed.
Not yet established
- Requirements: operating system, host computer
- Version-specific hardware compatibility (ecosystem tags alone do not establish it)
Updates
- Upstream last updated
- Not established
- Latest release
- Not established
- Profile updated
- Nov 1, 2026
- Sources last checked
- Nov 1, 2026
- Next review
- Dec 1, 2026
- Reviewed revision
34daf9a
Source files and licenses
Distinct robot-facing library contribution with actual implementation/model content and a bounded documented next step. Review covers source artifacts, not operational performance or a complete tested deployment.
| Layer | Availability / license |
|---|---|
| software | available · MIT Declaration for the scoped source implementation/documentation; dependencies, external services, model/data assets and inherited file-specific terms require separate checks. No blanket redistribution or operational clearance. [1] [2] [3] |
| documentation | available · MIT Declaration for the scoped source implementation/documentation; dependencies, external services, model/data assets and inherited file-specific terms require separate checks. No blanket redistribution or operational clearance. [1] [2] [3] |
This profile is scoped to source implementation/model descriptions and an initial inspection workflow; no physical manufacturing design, pretrained checkpoint or dataset is selected for redistribution or tested deployment.
References
Each source links to the exact revision we read. “Used for” shows where this page relies on it.
- S001 Project README
Revision, date & where cited
foxglove/mcap contributors · github.com · revision
34daf9a· Project README at · Accessed Nov 1, 2026
Used for: Overview, Is this for you?, What you need, Installation & first result and 4 more - S002 License declaration
Revision, date & where cited
foxglove/mcap contributors · github.com · revision
34daf9a· License declaration at · Accessed Nov 1, 2026
Used for: Is this for you?, What you need, Installation & first result, Evaluate the storage behavior you need and 1 more - S003 Selected implementation excerpt
Revision, date & where cited
foxglove/mcap contributors · github.com · revision
34daf9a· Selected implementation excerpt at · Accessed Nov 1, 2026
Used for: Overview, Is this for you?, What you need, Installation & first result and 4 more - S004 Repository artifact tree
Revision, date & where cited
foxglove/mcap contributors · github.com · revision
34daf9a· Repository artifact tree at · Accessed Nov 1, 2026
Used for: Is this for you?, What you need, Installation & first result, Pick a library or an inspection workflow - S005 Additional python/mcap/pyproject.toml
Revision, date & where cited
foxglove/mcap contributors · github.com · revision
34daf9a· Additional python/mcap/pyproject.toml at · Accessed Nov 1, 2026
Used for: Is this for you?, What you need, Installation & first result
Correction guidance · Discussion is not enabled · Profile format 0.7.0-draft.5