Bagel — вопросы к данным роботов и дронов

Bagel

MCP-сервер отвечает на вопросы о логах роботов, дронов и IoT обычным языком, а каждый расчет идет видимым запросом SQL

  • 406 ★ репозитория
  • Последний коммит
  • Apache-2.0
MCP-серверОфициальный

Расширенный доступ

Почему такой уровень

  • Конвейеры записывают новые файлы и могут загружать данные в облачные хранилища S3, GCS и Azure
  • Конечная точка MCP не защищена аутентификацией: любой процесс на компьютере может ее вызвать
  • Конвейеры постоянного действия работают на роботе и решают, какие данные сохранить, а какие отбросить
Все причины и проверки

extelligence-ai/bagel

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add mcp/bagel

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Конвейеры записывают новые файлы и могут загружать данные в облачные хранилища S3, GCS и Azure
  • Конечная точка MCP не защищена аутентификацией: любой процесс на компьютере может ее вызвать
  • Конвейеры постоянного действия работают на роботе и решают, какие данные сохранить, а какие отбросить

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Bagel читает записи с роботов, дронов и IoT-устройств и отвечает на вопросы о них обычным языком, например «перегревается ли датчик IMU». Все расчеты по данным сообщений выполняются запросами DuckDB SQL без догадок модели, и Bagel показывает запрос, чтобы его можно было проверить. Модель читает логи и не управляет роботом. Кроме вопросов, Bagel сокращает данные конвейером. Вы описываете событие, например «оставь по десять секунд до и после каждого резкого торможения». Bagel превращает фразу в проверяемый конвейер, показывает предпросмотр до записи первого байта и запускает его один раз, по всему парку записей или постоянно на самом роботе, сохраняя только окна вокруг событий. Форматы: ROS 1 и ROS 2, MCAP, логи PX4, ArduPilot и Betaflight, CAN и MDF4 (бета), MQTT и InfluxDB, PostgreSQL и TimescaleDB, а также CSV, JSON и Parquet. Для записанных данных не нужны ни Docker, ни установленный ROS. Живые роботы через rosbridge и сокращение данных на границе сети запускаются в Docker.

Для кого. Для инженеров по робототехнике, дронам и IoT, которые разбирают логи и хотят задавать вопросы агенту в Claude Code, Cursor или Codex вместо одноразовых скриптов.

Подходит, если

  • Нужно быстро понять, что внутри записи ROS, MCAP или полетного лога: темы, длительность, сообщения
  • Требуется найти события, например торможение сильнее заданного порога, и вырезать вокруг них фрагменты
  • Нужны пики, скользящие средние, процентили и корреляции между темами без отдельного скрипта на pandas
  • Записи на роботе занимают слишком много места, и надо хранить только окна вокруг интересных событий
  • Одну и ту же проверку нужно прогнать по папке из сотен записей и получить общий отчет

Не подходит, если

  • Нужно управлять роботом или отправлять ему команды: Bagel работает с логами, а модель не входит в цикл управления
  • Ваш формат данных не входит в список поддерживаемых: авторы предлагают завести запрос в репозитории
  • Важны реальные захваты автомобильных шин: чтение MDF4 и CAN проверено на файлах, созданных теми же библиотеками, и остается бетой
  • Нужны сложные конвейеры на небольшой локальной модели в 4–8 млрд параметров: для сокращения по событиям и соединения тем нужна модель крупнее

Пример запроса к агенту

Сделай сводку по записи ~/logs/run_42.mcap и найди все моменты, где торможение сильнее 10 м/с².

MCP

Транспорт
stdio, http
Авторизация
не нужна

Ограничения

Чтение автомобильных форматов MDF4 и CAN и интеграция Jev с детектором аномалий остаются бетой, их настройки могут меняться между релизами. Степень сокращения данных зависит от нагрузки: тихие записи сжимаются сильно, насыщенные событиями гораздо слабее, а цифры в документации взяты из демонстрации и замерами не считаются.

Конечная точка MCP не защищена аутентификацией и слушает только локальный адрес. Нужен Python 3.10–3.12, а для рекомендованного запуска еще uv. Разбор PX4 идет без Git, сеть и Git нужны только для необязательных описаний полей. API OpenAI и Anthropic из России недоступны, поэтому подключайте клиент или локальную модель, доступные с вашего адреса.

Как отключить. Удалите сервер командой `claude mcp remove bagel`. Для pip выполните `pip uninstall bagel-mcp`, для Docker остановите и удалите контейнер. Плагин Claude Code уберите через меню /plugin.

Частые вопросы

Как поставить Bagel в Claude Code?

Установите uv и выполните `claude mcp add bagel -- uvx --from "bagel-mcp[ros]" bagel-mcp --transport stdio`. Экстра ros читает ROS 1 и ROS 2. Другие форматы подключаются экстрами вроде px4, ardupilot, betaflight, automotive и iot, а при нехватке нужного ошибка Bagel называет точную команду добавления.

Нужны ли ROS и Docker, чтобы разобрать записанный лог?

Нет. Записи ROS 1, ROS 2, MCAP и полетные логи читаются через pip или uvx без Docker и без установки ROS. Docker нужен для живых роботов через rosbridge, парка и сокращения данных на границе сети.

Как убедиться, что ответы Bagel не придуманы моделью?

Каждый расчет выполняется запросом DuckDB SQL, который Bagel показывает. Темы сообщений доступны как одно реляционное представление, поэтому соединения и корреляции считаются одним запросом, а результат можно воспроизвести.

Можно ли запустить Bagel полностью на своем компьютере?

Да: данные и модель остаются на машине, если взять локальную модель через Ollama, например `qwen3:8b`. Подробности и ожидания по качеству собраны в руководстве doc/runbooks/local_llm.md. Для многошаговых конвейеров нужна модель крупнее.

Что дает плагин Bagel для Claude Code и Codex?

Четыре скилла, которые объясняют агенту, когда и как работать с сервером: разбор логов, составление конвейеров, подключение живых источников и экспорт для визуализации. Плагин сам подключает MCP-сервер, адрес по умолчанию http://localhost:8000/mcp.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы
Официальный

Облачный MCP-сервер Roboto: агент ищет по датасетам и файлам флота роботов и разбирает данные топиков, не меняя их

MCP-серверРасширенный доступ58Звезды репозитория

MCP-сервер text-to-SQL: агент спрашивает базу словами, получает SQL и трассу ответа, а при нехватке данных отказ с причиной.

MCP-серверРасширенный доступ81Звезды репозитория
Официальный

MCP-сервер строит онтологию из схемы базы данных и проверяет SQL агента до запуска: PostgreSQL, Snowflake, ClickHouse и другие

MCP-серверШирокий доступ58Звезды репозитория

Ragstar отвечает на вопросы по dbt-проекту в чате и Slack, а его MCP-сервер дает Claude поиск по моделям и их SQL

MCP-серверРасширенный доступ180Звезды репозитория
Официальный

Легкое рабочее место для баз данных с MCP-сервером: агент читает схему, выполняет запросы и разбирает данные в PostgreSQL, MySQL и других

MCP-серверШирокий доступ5,1 тыс.Звезды репозитория

Локальный MCP-сервер, который превращает папку с документами в базу знаний с гибридным поиском для Claude Code и Cursor

MCP-серверРасширенный доступ305Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
Bagel — вопросы к данным роботов и дронов (эта карточка)дане нужна406
ROS MCP Serverнетне нужна1 523соединяет агента с живым роботом на ROS через rosbridge: чтение датчиков и управление, записанные логи он не разбирает
openreality-mcpдаключ необязателен656MCP-сервер превращает видео с телефона в 3D-сцену

Коротко о README

Новому разбору Bagel учат текстовым файлом .poml, без правки кода. В репозитории есть встроенный пример для минутной проверки в Docker и руководства по подключению клиентов.

Бейдж для README

Сообщить о проблеме