CANExplorer MCP

MCP-сервер can-mcp открывает агенту шину CAN: трафик, декодирование, реверс-анализ и коды OBD-II с уровнями доступа.

  • 150 ★ репозитория
  • Последний коммит
  • MIT
MCP-сервер

Широкий доступ

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

  • На уровнях `control` и `send` агент способен сбрасывать блоки управления, стирать коды неисправностей и передавать произвольные кадры на живую шину.
  • Ошибочные кадры на шине реального автомобиля или станка могут вызвать сбой оборудования, тестируйте только свои устройства.
Все причины и проверки

akj7/canexplorer

Установка

Ручная установка

git clone https://github.com/AKJ7/CANExplorer.git && cd CANExplorer && uv sync

Установка из исходников; есть также установщики и snap для Linux. Нужны uv и Python 3.10 или новее.

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

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

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • На уровнях `control` и `send` агент способен сбрасывать блоки управления, стирать коды неисправностей и передавать произвольные кадры на живую шину.
  • Ошибочные кадры на шине реального автомобиля или станка могут вызвать сбой оборудования, тестируйте только свои устройства.

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

Что делает

CANExplorer — программа для мониторинга, анализа, диагностики и симуляции шин CAN, CAN FD и LIN. Команда `can-mcp` открывает шину для ИИ-агента по протоколу MCP: агент смотрит идентификаторы, декодирует кадры и протоколы, запускает реверс-анализ, сопоставляет поля, переносит найденное в DBC и читает коды неисправностей по OBD-II и UDS. Инструменты, ресурсы и подсказки закрыты уровнями доступа. Сервер работает в двух видах: отдельный процесс `can-mcp` по stdio и встроенный сервер приложения, который показывает агенту ту же открытую шину, что и вам.

Для кого. Автомобильным инженерам и исследователям CAN-шин, которые хотят поручить агенту разбор трафика, не давая ему передавать кадры.

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

  • Дамп шины содержит сотни идентификаторов, и агент должен найти счетчики, контрольные суммы и поля сигналов.
  • Найденные поля надо оформить в файл DBC и проверить декодирование на живом трафике.
  • Автомобиль с OBD-II требует чтения кодов неисправностей без ручной работы в приложении.
  • Агент подключается к шине, уже открытой в приложении, и смотрит тот же журнал, что и вы.

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

  • Шина принадлежит не вам и разрешения на тестирование нет: сбросы блоков и кадры могут вывести оборудование из строя.
  • Нужно запускать агента на шине, где недопустима любая запись: оставляйте режим чтения и проверяйте флаги запуска.
  • Нужны запись и воспроизведение логов или редактор баз сигналов: этим занимается само приложение.

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

Подключись к виртуальной шине, загрузи `vehicle.dbc` и покажи, у каких идентификаторов чаще всего меняются байты и где есть поля, похожие на счетчик.

MCP

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

Ограничения

Нужен адаптер из числа поддерживаемых python-can либо виртуальная шина без оборудования. Большинство USB- и serial-адаптеров открываются одним процессом, поэтому отдельный `can-mcp` не откроет канал, уже занятый приложением: для такого случая есть встроенный сервер. По умолчанию доступно только чтение, а `--allow-diagnostics`, `--allow-control` и `--allow-send` разрешают диагностику, сбросы блоков со стиранием кодов и произвольные кадры. Встроенный сервер слушает `127.0.0.1` и требует токен, порт и токен меняются при каждом запуске. Ставится из установщика или из исходников через `uv sync`.

Как отключить. Удалите запись `canexplorer` из конфигурации MCP-клиента. Встроенный сервер останавливает кнопка Agent на панели Trace, а само приложение удаляют обычным способом.

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

Как подключить `can-mcp` к MCP-клиенту?

Добавьте в конфигурацию `{"mcpServers":{"canexplorer":{"command":"can-mcp"}}}`. Шину агент выберет сам инструментами `connect` и `disconnect`. Чтобы открыть ее сразу, передайте аргументы `-i socketcan -c can0`, при необходимости с `-d vehicle.dbc`.

Что агент может делать по умолчанию?

Только читать шину. Диагностику OBD-II и UDS включает `--allow-diagnostics`, сбросы и стирание кодов `--allow-control`, передачу кадров `--allow-send`.

Как подключить агента к шине из приложения?

Нажмите Agent… на панели Trace, выберите уровень доступа и Start. Приложение покажет адрес на `127.0.0.1` и токен для заголовка `Authorization: Bearer`, транспорт streamable HTTP.

Можно ли попробовать без оборудования?

Да. Подключитесь к виртуальной шине `VirtualBus` и загрузите пример `examples/simulation/vehicle.dbc`.

Какие форматы баз сигналов поддерживает приложение?

DBC, DBF, ARXML, KCD, SYM и LDF. Загрузить базу в агентскую сессию можно инструментом `load_database`.

Обсуждение

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

MCP-серверы

Три скилла Claude Code: расшифровка сигналов шины CAN в файлы DBC по записям с интерфейса CANsub, с проверкой и объединением

СкиллРасширенный доступ255Звезды репозитория

Консольный инспектор HTTP-серверов MCP: покажет инструменты, схемы, промпты и ресурсы и вызовет любой инструмент вручную.

CLIРасширенный доступ134Звезды репозитория

MCP-сервер, который дает агенту читать файлы, искать по коду и запускать команды в рабочей папке

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

CLI openmcp и расширение VS Code для отладки MCP-серверов: проверка инструментов, промптов и ресурсов, чат с моделью, тесты

CLIРасширенный доступ750Звезды репозитория

MCP Server for WinDbg

MCP Server for WinDbg Crash Analysis

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

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

MCP-сервер проекта OpenROAD: агент открывает сессии OpenROAD, выполняет команды, смотрит историю, метрики и отчеты ORFS

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

Коротко о README

Документация перечисляет возможности приложения: мониторинг, запись и воспроизведение, базы сигналов, диагностику UDS, OBD-II, DoIP, J1939 и CANopen, симуляцию ЭБУ и автотесты. Отдельная страница документации описывает режимы MCP-сервера и уровни доступа.

Бейдж для README

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