Telebugs MCP Server
MCP-сервер Telebugs
MCP-сервер (Model Context Protocol), позволяющий ИИ-агентам извлекать отчеты об ошибках из Telebugs, self-hosted альтернативы Sentry.
Архитектура
┌─────────────────┐ ┌─────────────────────────────────────┐
│ Local Machine │ │ Remote VPS │
│ │ HTTPS │ │
│ Claude Desktop │ ◄───────────────────────► │ Bun MCP Server ───► Telebugs │
│ │ (SSE transport) │ :3100 SQLite DB │
└─────────────────┘ └─────────────────────────────────────┘Related MCP server: otel-mcp
Возможности
Прямой доступ к базе данных — чтение и запись в базу данных SQLite Telebugs
Аутентификация MCP OAuth — OAuth-поток через браузер, поддерживаемый пользователями Telebugs
Аутентификация по API-ключу — по-прежнему принимает существующие API-ключи пользователей Telebugs в качестве токенов носителя (bearer tokens)
Контроль доступа — пользователи видят только те проекты, в которых они состоят
Транспорт SSE — позволяет удаленные подключения через Claude Desktop
Эффективность токенов — компактный JSON, по умолчанию отображаются только открытые ошибки
Одиночный бинарный файл — кросс-компиляция для Linux, отсутствие зависимостей среды выполнения
Доступные инструменты
Инструмент | Описание |
| Список всех доступных проектов |
| Список дедуплицированных групп ошибок с фильтрацией |
| Получение подробной информации о конкретной группе ошибок |
| Список отдельных случаев возникновения ошибок |
| Получение полного отчета с трассировкой, «хлебными крошками» и контекстом |
| Получение агрегированной статистики ошибок |
| Полнотекстовый поиск по ошибкам |
| Список всех релизов проекта с количеством артефактов |
| Список загруженных артефактов для релиза |
| Проверка наличия исходных карт (sourcemaps) для debug ID |
| Разрешить группу ошибок (отметить как исправленную) |
| Снова открыть разрешенную группу ошибок |
| Отключить уведомления для группы ошибок с опциональным сроком действия |
| Включить уведомления для группы ошибок |
| Добавить заметку к группе ошибок |
| Удалить заметку из группы ошибок (только для автора) |
| Создать новый проект (только для администратора) |
| Обновить название или часовой пояс проекта (только для администратора) |
| Мягкое удаление проекта (только для администратора) |
| Получить токен/DSN проекта для настройки SDK |
| Пересоздать токен проекта (только для администратора) |
| Добавить пользователя в проект (только для администратора) |
| Удалить пользователя из проекта (только для администратора) |
| Список участников проекта с ролями |
| Список доступных платформ для создания проекта |
list_error_groups
Параметр | Тип | По умолчанию | Описание |
| number | - | Фильтр по ID проекта |
| string |
|
|
| string | - | Фильтр по точному типу ошибки |
| string | - | Фильтр по сообщению об ошибке (поиск подстроки) |
| string | - | Дата начала (ISO 8601) |
| string | - | Дата окончания (ISO 8601) |
| number | 20 | Макс. количество результатов (1-100) |
| number | 0 | Пропустить N результатов для пагинации |
Возвращает total_count для пагинации.
list_reports
Параметр | Тип | По умолчанию | Описание |
| number | - | Фильтр по ID группы ошибок |
| number | - | Фильтр по ID проекта |
| string | - | Дата начала (ISO 8601) |
| string | - | Дата окончания (ISO 8601) |
| number | 20 | Макс. количество результатов (1-100) |
| number | 0 | Пропустить N результатов для пагинации |
Возвращает total_count для пагинации.
search_errors
Параметр | Тип | По умолчанию | Описание |
| string | обязательный | Поисковый запрос для полнотекстового поиска |
| number | - | Фильтр по ID проекта |
| number | 20 | Макс. количество результатов (1-100) |
resolve_error_group / unresolve_error_group / unmute_error_group
Эти инструменты требуют только group_id (number).
mute_error_group
Параметр | Тип | По умолчанию | Описание |
| number | обязательный | ID группы ошибок |
| string | - | Опциональная дата в формате ISO 8601, до которой группа будет отключена |
add_note
Параметр | Тип | По умолчанию | Описание |
| number | обязательный | ID группы ошибок |
| string | обязательный | Содержимое заметки |
delete_note
Параметр | Тип | По умолчанию | Описание |
| number | обязательный | ID группы ошибок |
| number | обязательный | ID заметки для удаления |
create_project (только для администратора)
Параметр | Тип | По умолчанию | Описание |
| string | обязательный | Название проекта (уникальное) |
| string | обязательный | Название платформы — используйте |
| string |
| Часовой пояс проекта (например, |
update_project (только для администратора)
Параметр | Тип | По умолчанию | Описание |
| number | обязательный | ID проекта для обновления |
| string | - | Новое название проекта |
| string | - | Новый часовой пояс |
delete_project / regenerate_project_token (только для администратора)
Эти инструменты требуют только project_id (number).
add_project_member / remove_project_member (только для администратора)
Параметр | Тип | По умолчанию | Описание |
| number | обязательный | ID проекта |
| number | обязательный | ID пользователя для добавления/удаления |
get_project_token / list_project_members
Эти инструменты требуют только project_id (number).
list_platforms
Параметры отсутствуют. Возвращает все доступные названия платформ.
Установка
cd telebugs-mcp
bun installСборка
# Build for current platform
bun run build
# Build for Linux (for VPS deployment)
bun run build:linuxКонфигурация
Переменная | Описание | По умолчанию |
| Путь к базе данных SQLite Telebugs |
|
| HTTP-порт для прослушивания |
|
| Публичный базовый URL для метаданных OAuth и редиректов | определяется из запроса |
| Время жизни токенов доступа MCP OAuth |
|
|
| не задано |
Локальный запуск
TELEBUGS_DB_PATH=/path/to/telebugs/storage/db/development.sqlite3 bun run devРазвертывание
Одиночный бинарный файл
# Copy to server
scp telebugs-mcp-linux root@your-server:~/telebugs-mcp-linux
# On server
chmod +x ~/telebugs-mcp-linux
./telebugs-mcp-linuxСлужба systemd
Скопируйте telebugs-mcp.service в /etc/systemd/system/:
cp telebugs-mcp.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable telebugs-mcp
systemctl start telebugs-mcpПроверьте статус:
systemctl status telebugs-mcpОбратный прокси-сервер Nginx (опционально)
location /mcp {
proxy_pass http://127.0.0.1:3100;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# SSE support
proxy_set_header Connection '';
proxy_buffering off;
proxy_cache off;
chunked_transfer_encoding off;
}Конфигурация Claude Desktop
Для MCP-клиентов с поддержкой OAuth настройте только URL сервера. Клиент обнаружит метаданные OAuth, откроет страницу входа в браузере и повторит попытку с выданным токеном носителя:
{
"mcpServers": {
"telebugs": {
"url": "https://your-server/mcp"
}
}
}Когда MCP-сервер работает за обратным прокси-сервером, установите MCP_BASE_URL на публичный HTTPS-источник:
MCP_BASE_URL=https://your-server bun run startСтраница входа OAuth отображается с помощью React с CSS, сгенерированным Tailwind через плагин Bun. Она соответствует странице входа Telebugs, показывает запрашивающего клиента и источник перенаправления, а также требует явного подтверждения перед выдачей кода авторизации. Она принимает ваш email/пароль от Telebugs, проверяя их по тому же bcrypt users.password_digest, который использует Telebugs. Она также может принимать ссылку для входа в Telebugs из /session/transfers/..., когда задан TELEBUGS_SECRET_KEY_BASE, чтобы MCP-сервер мог получить ключ верификатора active_record/signed_id от Rails и проверить полезную нагрузку подписанного ID.
Если Telebugs настроен с использованием RAILS_MASTER_KEY вместо SECRET_KEY_BASE, прочитайте значение из приложения Telebugs с помощью bin/rails runner 'puts Rails.application.secret_key_base' и передайте его этому серверу как TELEBUGS_SECRET_KEY_BASE.
Для клиентов, которые еще не поддерживают MCP OAuth, статический токен носителя по-прежнему работает. Добавьте его в ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"telebugs": {
"url": "http://your-server:3100/mcp",
"headers": {
"Authorization": "Bearer your_telebugs_api_key"
}
}
}
}Получение вашего API-ключа
Войдите в свой экземпляр Telebugs
Перейдите в Пользователь → Настройки аккаунта → Безопасность
Скопируйте свой API-ключ
Безопасность
Операции только для администраторов принудительно ограничены для управления проектами (создание, обновление, удаление, пересоздание токена, членство)
Операции записи ограничены изменением статуса ошибок, заметками и управлением проектами
Все мутации ограничены членством пользователя в проектах
API-ключи проверяются только по активным пользователям
Токены доступа OAuth являются кратковременными и хранятся в памяти MCP-сервера
Все запросы фильтруются по членству пользователя в проектах
Параметризованные запросы (защита от SQL-инъекций)
Проверка работоспособности
curl http://localhost:3100/health
# {"status":"ok"}Лицензия
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Remote MCP server for supportsheep: run AI interviews and manage support content for your blog.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
- UnifAPIOAuthcom.unifapi
Hosted MCP server for live public-data APIs and Skills for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server that guides an AI agent through stack trace triage, from raw error to the commit and PR that introduced it.2MIT
- AlicenseAqualityDmaintenanceMCP server that gives AI agents access to your application's OpenTelemetry traces for querying, analysis, and debugging.57 npm2MIT
- FlicenseCqualityDmaintenanceMCP server allowing AI agents to query New Relic for debugging incidents.2-
- AlicenseAqualityDmaintenanceMCP server for integrating self-hosted Sentry with AI assistants, enabling project and issue listing, issue details with stack traces, and event retrieval.77 npm1MIT