Отладка пользовательских баг-репортов в Claude Code: MCP-сервер BugDump

баг-трекинг

Пользователь присылает баг. В отчёте 300 записей консоли, 150 сетевых запросов, воспроизведение сессии, данные об окружении и скриншот. Кому-то всё равно придётся всё это прочитать, связать упавший запрос с ошибкой в консоли и найти нужную строку кода.

Как раз такое чтение ИИ-ассистенты для программирования делают хорошо — если могут добраться до данных. У BugDump есть MCP-сервер: через него Claude Code, Cursor, Claude Desktop и любой клиент с поддержкой MCP сами листают ваши баг-репорты и разбираются в них по запросу на обычном языке.

Коротко о том, что такое MCP

MCP (Model Context Protocol) — открытый стандарт, по которому ИИ-ассистенты подключаются к внешним источникам данных и инструментам. Вместо того чтобы копировать логи в окно чата, вы подключаете ассистента к MCP-серверу, и он сам запрашивает данные: по ходу работы решает, что получить и в каком порядке.

Для баг-репортов это важно, потому что полезные сигналы разбросаны. Ошибка в консоли — одна зацепка, ответ 500 за две секунды до неё — вторая, а воспроизведение, где пользователь дважды кликает по кнопке отправки, — третья. Ассистент с доступом по MCP достаёт каждую часть по мере того, как складывается его гипотеза, — так же, как вы переключались бы между вкладками дашборда.

Что открывает MCP-сервер BugDump

После подключения к проекту ассистент читает весь контекст его багов:

  • сами отчёты — описания, данные об авторе, время отправки

  • логи консоли, собранные с каждым отчётом

  • сетевые запросы, включая коды ответа и помеченные сбои

  • данные об окружении: браузер, ОС, устройство, вьюпорт, URL страницы

  • скриншоты и контекст воспроизведения сессии

  • задачи, в которые собраны отчёты

Поэтому такие вопросы работают как обычные промпты:

  • «Покажи последние баг-репорты в bugdump и кратко опиши главную проблему».

  • «Есть ли в bugdump отчёты, где пользователи получили 500 на /api/orders? Кратко опиши сетевые запросы».

  • «Найди в bugdump задачу про оформление заказа и покажи ошибки консоли из её отчётов».

Ассистент читает сырую телеметрию и отвечает выжимкой, а поскольку у инструментов вроде Claude Code открыт ещё и ваш код, следующий шаг часто звучит так: «теперь найди, где отправляется этот запрос, и поправь проверку на null». Баг-репорт и исправление умещаются в одну сессию.

Настройка

Обновлено в октябре 2026 года: Claude, Claude Code, ChatGPT и VS Code теперь подключаются через вход в BugDump, без токена — см. Как подключить Claude, ChatGPT или VS Code к BugDump. Доступ по MCP бесплатен на всех тарифах.

Cursor и другие клиенты подключаются по личному токену, у каждого человека свой:

  1. Откройте страницу MCP-сервер вашего проекта и создайте токен. Создать его может любой участник, и токен действует от вашего имени: ассистент видит то же, что и вы. Не ставьте галочку Разрешить изменения, если нужен доступ только на чтение, или поставьте её, и ассистент сможет переносить задачи, комментировать, ставить приоритет и назначать исполнителя.

  2. Скопируйте команду claude mcp add, которую показывает страница, или закоммитьте общий .mcp.json, который она предлагает. Этот файл берёт токен из переменной окружения BUGDUMP_MCP_TOKEN, так что секрет в репозиторий не попадает.

  3. Перезапустите или перезагрузите MCP-клиент. Инструменты BugDump появятся рядом с другими вашими MCP-серверами.

Если токен утёк, отзовите его на той же странице — он сразу перестанет работать. Когда подрядчик уходит с проекта, удалите его из команды, и все его токены отзовутся разом.

MCP-сервер есть на всех тарифах, включая бесплатный. Почему я перешёл с общего ключа на личные токены — в статье Аутентификация на MCP-сервере: зачем ИИ-агентам личные токены.

Как это выглядит на деле

Вот как это работает на настоящем баге:

  1. Пользователь сообщает через виджет на вашем сайте: «кнопка оформления заказа ничего не делает». Отчёт приходит с логами консоли, сетевой активностью и воспроизведением сессии.

  2. В Claude Code вы спрашиваете: «Посмотри самый свежий отчёт в bugdump про оформление заказа. Что там падает?»

  3. Ассистент получает отчёт, находит в консоли необработанный TypeError и замечает, что прямо перед ним запрос /api/cart вернул 500. Его вывод: клиент рассчитывал, что в ответе корзины всегда есть объект shipping, а API вместо этого вернул страницу ошибки.

  4. Вы просите найти это место в коде. У Claude Code есть ваш репозиторий, так что он находит обработчик корзины и добавляет недостающую обработку ошибки, а вы проверяете дифф.

  5. Вы просите ассистента перенести задачу в «Готово» и оставить комментарий с описанием исправления — изменение появится под вашим именем с пометкой «через MCP», — а если вы пользуетесь интеграциями, то и закрыть связанный issue на GitHub.

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

Чего это не заменяет

Ассистент, подключённый по MCP, быстро читает и хорошо выдвигает гипотезы, но вашу оценку он не заменяет. Вы по-прежнему решаете, какие баги важны, правильно ли предложенное исправление и не указывает ли сбой на проблему глубже, в архитектуре. Считайте выжимку ассистента форой при разборе, а не вердиктом.

И контекст, который никто не собрал, он не возьмёт из воздуха. Качество отладки с ИИ ограничено качеством отчётов — и это довод в пользу того, чтобы собирать консоль, сеть и воспроизведение сессии автоматически, а не надеяться, что пользователи их опишут.

Если посмотреть шире

В работе с багами всегда был слой перевода: пользователи описывают симптомы, разработчики восстанавливают причины. Автоматический сбор убрал первую половину этого перевода — технические факты приходят вместе с отчётом. MCP убирает бо́льшую часть второй половины — ассистент читает эти факты и сопоставляет их с кодом.

Вам остаётся самое интересное: решать, что делать, и проверять исправление. Если ваши баг-репорты сейчас лежат в инструменте, которого ваш ИИ-ассистент не видит, этот разрыв стоит закрыть первым. В BugDump для этого нужны личный токен и одна команда.

Читайте также