Bagel lets you chat with your robotics data.
For example, you can ask Bagel to check a PX4 drone's IMU data for hard landings:
Bagel can also propose fixes for detected errors in your robot:
Bagel works with a wide range of common robotics and sensor log formats out of the box. Don't see your format? Open a ticket.
| Format |
|---|
✅ ROS 2 (.mcap, .db3) |
✅ ROS 1 (.bag) |
✅ PX4 (.ulg) |
✅ ArduPilot (.bin) |
Don't forget to join our Discord server! (We messed up our Discord invite before. This link should add you as a member automatically.)
We are using ROS2 Kilted and Claude Code as example.
source /opt/ros/kilted/setup.sh # Source ROS2 dependencies
uv sync --group ros2 # Install PyPI packages
uv run main.py up mcp # Start Bagel MCP serverOpen another terminal and run:
# Add Bagel MCP server to Claude Code
claude mcp add --transport sse bagel http://localhost:8000/sse
# Launch Claude Code
claude
# Happy prompting
> Summarize the metadata of robolog "./doc/tutorials/data/ros2".The Bagel MCP server is not exclusively tied to Claude. You're free to integrate your preferred LLMs with Bagel.
- Claude Code, PX4 ULog
- Gemini CLI, ROS2 Bag
- Cursor, PX4 ULog
- Claude Code, ArduPilot Dataflash
- Build a Data Pipeline from a PX4 ULog
- Read Topic Messages from a ROS2 Bag
To run Bagel without installing local dependencies like ROS, you can use our provided Docker images. Make sure you have Docker Desktop installed. This example uses ROS 2 Kilted.
First, give the container access to your robolog files. Open the compose.yaml file and find the service you want to use (e.g., ros2-kilted). Edit the volumes section to link your local data folder to the container's data folder.
services:
ros2-kilted:
...
# volumes: <-- ✅ Uncomment
# - <path-to-local-data>:/home/ubuntu/data <-- ✅ Uncomment & ReplaceYour local robolog files will be accessible inside the container at /home/ubuntu/data.
Build and start the Bagel MCP server in a container with this command.
docker compose run --build --service-ports ros2-kilted uv run main.py up mcpIf there's something you have feedback on, or something you'd like to see, file a feature request and let us know!
Features are organized into Versions for easier tracking. New features will be released regularly, and this README.md will be updated to show which ones have shipped. Strikethrough text indicates completed features.
- Computer Vision (CV) Module
- Video Language Model
- Anomaly detection
- Similarity search
- More Robotics Formats
- More LLMs
Cursor- OpenAI
- Llama
- Copilot
- Troubleshooting Toolkit
- Better User Experience
- Message pagination
- MCP resources
- DSL for querying nested topic messages
- Easy Model Integration
- Platform Integration
- Foxglove
- Rerun
- Better User Experience
- Pip install and PyPI package
bagelCLI