Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Bagel is ChatGPT for physical data. Just ask questions and get answers. No Fuss.

License

smeric28/bagel

 
 

Repository files navigation


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.)

Quickstart

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 server

Open 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.

Tutorials

Running in Docker 🐳

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.

Mount Your Data

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 & Replace

Your local robolog files will be accessible inside the container at /home/ubuntu/data.

Launch the MCP Server

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 mcp

Roadmap

If 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.

V1

  • Computer Vision (CV) Module
    • Video Language Model
    • Anomaly detection
    • Similarity search
  • More Robotics Formats
  • More LLMs
    • Cursor
    • OpenAI
    • Llama
    • Copilot

V1.5

  • Troubleshooting Toolkit
  • Better User Experience
    • Message pagination
    • MCP resources
    • DSL for querying nested topic messages
  • Easy Model Integration

V2

  • Platform Integration
    • Foxglove
    • Rerun
  • Better User Experience
    • Pip install and PyPI package
    • bagel CLI

About

Bagel is ChatGPT for physical data. Just ask questions and get answers. No Fuss.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%