skillfed

mcap-ros1-support

ROS1 support for the Python MCAP library

mcap-ros1-support v0.7.4 93.7K downloads/30d#13,369 on PyPI1,041
Permissive license Active released

What it is and what it does

mcap-ros1-support bridges ROS1 and the MCAP file format by providing Python APIs to read and write ROS1 messages in MCAP files. MCAP is a container format for time-series data, and this package adds the ROS1-specific serialization layer needed to work with ROS1 message types within that container.

The package is built on top of the mcap library and depends on pyyaml for configuration handling. It exposes a reader interface for iterating over ROS1 messages stored in MCAP files and a writer interface for serializing ROS1 messages into new MCAP files. This is useful for robotics workflows where you need to log, replay, or analyze ROS1 sensor and control data in a standardized, language-agnostic format.

Use it for:

  • Log ROS1 sensor data (camera, lidar, IMU) to MCAP files for offline analysis and replay
  • Convert ROS1 bag files or live topics to MCAP format for interoperability with non-ROS tools
  • Read and deserialize ROS1 messages from MCAP files in Python for data processing pipelines
  • Archive robot telemetry and control messages in a portable, timestamped format

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Adds ROS1 message serialization and deserialization support to the MCAP file format, enabling reading and writing of ROS1 data in MCAP files.

Yes. The package is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and carries low install friction. Install it if you need to work with ROS1 data in MCAP format; skip it if you have no ROS1 integration requirement.

Install

mcap-ros1-support on PyPI

pip

pip install mcap-ros1-support

uv

uv add mcap-ros1-support

poetry

poetry add mcap-ros1-support

Installing mcap-ros1-support

Before you install

Low friction install with only two runtime dependencies (mcap and pyyaml). Package is actively maintained with recent commits and no known vulnerabilities.

License in practice

MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute this package freely provided you include the license notice.

Quickstart

pip install mcap-ros1-support

from mcap_ros1.reader import read_ros1_messages
for msg in read_ros1_messages("my_data.mcap"):
    print(f"{msg.topic}: {msg.ros_msg}")

Verify before relying

  • Whether ROS1 message definitions must be pre-installed or discoverable on the system for reading to work
  • Performance characteristics when handling large MCAP files or high-frequency message streams

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 2 — mcap, pyyaml
Maintenance actively maintained — 233 days since the last release
Last repo commit
First released
Downloads 93,709/month — #13,369 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: mcap_ros1_support-0.7.4-py3-none-any.whl

License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3

Tags

ros1 mcap file supportread write ros1 messagesmcap ros1 serializationros1 data logging formatmcap file ros integration
ros1mcaprobotics

More Software Development packages