Какую боль решает:
Сервер DevBoost решает две классические проблемы локальной разработки, отнимающие часы времени:
- Проблемы с окружением: залипшие порты (
EADDRINUSE) и рассинхрон системных версий (Node/Python) между разработчиками. - Проблемы с базами данных: медленные SQL-запросы, сложность профилирования (чтение "простыней"
EXPLAIN ANALYZE) и непонимание того, где конкретно не хватает индексов.
Для кого полезен: Fullstack-разработчики, джуниор/мидл бэкендеры и AI-агенты, так как сервер превращает любую LLM в локального DevOps-инженера и DBA (Database Administrator).
Какие инструменты реализованы (4 инструмента):
check_versions— проверка версий установленного локального софта.kill_port_hog— устранение зависших процессов по порту.explain_query— профилирование SQL-запросов (поиск узких мест типа Seq Scan).suggest_index— выявление отсутствующих индексов для оптимизации таблиц.
Мы максимально упростили запуск проекта, автоматизировав установку зависимостей, сборку и запуск БД.
Для запуска проекта вам понадобится:
- Установленный Docker и Docker Compose (для запуска сервера и базы данных).
- Установленный Node.js (npm/npx) (для интерфейса Inspector).
- Установленный Python 3.10+ (для локальной установки пакетов).
Для проверяющих жюри и быстрого тестирования в корне проекта лежат исполняемые файлы. Просто запустите нужный файл двойным кликом (на Windows) или через терминал (на Mac/Linux):
- Windows: Двойной клик по
1_Запустить_Сервер.bat - Mac/Linux:
bash 1_start_server.sh
Что произойдет автоматически:
- Скрипт создаст чистое локальное окружение и установит зависимости.
- Соберет Docker-образ MCP-сервера DevBoost.
- Поднимет тестовую базу данных на 100 000 строк и сам сервер.
- Автоматически скачает и откроет MCP Inspector в вашем браузере!
После запуска скрипта вам останется лишь перейти по предоставленной браузерной ссылке (обычно http://localhost:5173) и начать работать с ИИ во вкладке Chat!
Если вы хотите запустить проект вручную:
Создание окружения и локальная установка пакета:
⚠️ Важно для Windows: Пакетasyncpgможет выдавать ошибку компиляции на Python 3.13. Рекомендуем использовать Python 3.10-3.12.
python3 -m venv .venv
# Mac/Linux: source .venv/bin/activate
# Windows: .venv\Scripts\activate
pip install -e .Сборка образа и запуск (без базы данных):
docker build -t devboost-mcp .
docker run -p 8080:8000 devboost-mcp serveДля быстрой проверки работоспособности образа (Smoke Test), который запустится, проверит собственный /health и моментально завершится:
docker run --rm devboost-mcp smokeТакже вы можете вручную проверить эндпоинт, если сервер запущен через команду server:
curl http://localhost:8080/healthТестирование через Inspector браузера (локально):
Для проверки всего функционала руками подготовлена папка demo_project/ с тестовой БД. Подробная инструкция по запуску Inspector описана в файле DEMO.md.
Подключение реального ИИ (Claude Desktop):
Добавьте этот блок в конфиг claude_desktop_config.json и перезапустите приложение:
{
"mcpServers": {
"devboost": {
"command": "/АБСОЛЮТНЫЙ_ПУТЬ_ДО_ВЕНВ_ПРОЕКТА/bin/python",
"args": ["/АБСОЛЮТНЫЙ_ПУТЬ_ДО_ПРОЕКТА/run_stdio.py"],
"env": {
"DATABASE_URL": "postgresql://testuser:testpass@localhost:54322/testdb"
}
}
}
}Сервер предоставляет ИИ-ассистентам следующие функции (Tools):
- Что делает: Проверяет установленные в системе версии утилит (например, node, docker).
- Входные параметры:
tools: array of strings(список имен бинарников, например["node", "docker"]). - Ожидаемый результат: Текст с найденным путем до бинарника и его версией, либо сообщение об отсутствии.
- Что делает: Находит и завершает процесс (PID), который занимает указанный порт. Безопасен, так как убивает только процессы текущего пользователя.
- Входные параметры:
port: integer(например,8080). - Ожидаемый результат: Имя и PID убитого процесса, либо уведомление, что порт свободен.
- Что делает: Выполняет
EXPLAIN ANALYZEдля переданного SQL-запроса в подключенной PostgreSQL базе. - Входные параметры:
query: string(валидный SQL SELECT запрос). - Ожидаемый результат: JSON-структура плана выполнения запроса (показывает реальное время и методы сканирования, например Seq Scan).
- Что делает: Читает схему базы данных PostgreSQL, находя все существующие индексы для заданных таблиц.
- Входные параметры:
tables: array of strings(список таблиц, например["users"]). - Ожидаемый результат: Список существующих индексов. ИИ использует эту информацию для генерации команды
CREATE INDEX, если выявил проблему шагом ранее.
Что поддерживается:
- Мониторинг портов и завершение процессов работает на macOS и Linux.
- Инструменты для работы с базами данных строго завязаны на PostgreSQL.
- Работа по протоколу MCP через потоки
stdio(Python) илиSSEэндпоинты (Docker).
Что не поддерживается:
- Windows-специфичные сетевые команды (инструмент
kill_port_hogиспользуетlsofпод капотом). - Другие СУБД (MySQL, SQLite, MongoDB).
- Выполнение мутирующих SQL-запросов клиентом напрямую в обход
explain(сервер спроектирован для анализа, а не для удаления данных).
На каком тестовом проекте проверялось:
Сервер проверялся на проекте из папки demo_project/. Внутри находится классическая проблема: конфигурация docker-compose, поднимающая базу данных PostgreSQL 15, в которой развернута таблица users на 100 000 строк. Присутствует скрипт инициализации init-db.sql. Эта конфигурация гарантированно воспроизводит проблемы долгого Seq Scan без индексов.
Данный MCP-сервер является автономным и не требует внешних платных сервисов (OpenAI, Anthropic API) на своей стороне. Единственная "интеграция" — подключение к вашей локальной базе данных.
Как включить:
При запуске сервера необходимо передать строку подключения через переменную окружения DATABASE_URL.
В репозитории лежит шаблон .env.example, который вы можете использовать для локального тестирования. Секретов в репозитории нет.