Sponsored by Deepsite.site

Bagel Robotics MCP Server

Created By
Shouheng Yi6 months ago
Turn Your ROS/PX4 Robots into Agents! 🤖 Unleash the full potential of your robots by transforming them into intelligent AI agents with Bagel. Show us some love and support our project by giving us a star on GitHub! ⭐ https://github.com/shouhengyi/bagel
Content


Bagel: Bag Extraction Tool

Bagel allows you to extract, transform, and analyze robotics data — fast.

How fast? Cast topic messages to a pandas DataFrame or PyArrow Dataset in under four lines of code.

from src.reader import factory

reader = factory.make_topic_message_reader("./doc/tutorials/data/ros2")
ds = reader.read(["/fluid_pressure"])  # return a pyarrow Dataset
df = ds.to_table().to_pandas()         # cast into a pandas DataFrame

You can do much more! Whether you're performing granular robot-level troubleshooting, analyzing fleet-wide performance metrics, or creating high-level executive dashboards, Bagel gets the job done.

Get started today

Join our Discord server

A Sneak Peek

Bagel can visualize camera latency from a robolog:

...or aggregate fleet-level exceptions over time:

Why Do I Need Bagel?

Robots generate a torrent of sensor data, and our ability to process it is falling behind. Trying to upload massive datasets from the field over flaky networks just doesn’t scale.

Developers have been stuck with bad options:

  • 🗑️ Drop data and hope you don't need it later.
  • ✂️ Snip logs based on guesswork and miss the unknown unknowns.
  • 💸 Pay a fortune in transfer and storage costs to keep everything.

Then came Bagel :bagel:!

Why pay for cloud compute when your robots and servers are sitting idle? Bagel brings the processing to your hardware.

Use your fleet's downtime to aggregate analytics, train models, and auto-triage issues right at the source. With Bagel, you only send the valuable, distilled insights to the cloud, not the raw firehose of data.

Log Formats

Bagel is designed to ingest a wide range of common robotics and sensor log formats out of the box.

FormatSupported Encodings
ROS 2 (.mcap, .db3)ros1, ros2, protobuf
ROS 1 (.bag)ros1
PX4 (.ulg)ULog

Don’t See Your Format?

Bagel is built to be extensible. If your preferred format isn’t listed, we encourage you to open a feature request to start a discussion!

Getting Started

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

Launch the App

Build and start the container with a single command.

docker compose up --build ros2-kilted

For future runs, you can omit the --build flag.

Your local robolog files are now accessible inside the container at /home/ubuntu/data.

Running Locally 🛠️

If local dependencies like ROS are already installed, you can run Bagel directly on your machine.

Prerequisites

First, ensure you have the following tools installed:

Install & Run

Next, use Poetry to install the project dependencies and run the application.

poetry install
poetry run python3 main.py up
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
WindsurfThe new purpose-built IDE to harness magic
Playwright McpPlaywright MCP server
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
ChatWiseThe second fastest AI chatbot™
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
DeepChatYour AI Partner on Desktop
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Tavily Mcp
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
CursorThe AI Code Editor
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
Serper MCP ServerA Serper MCP Server
Amap Maps高德地图官方 MCP Server