MySQL Навигатор MCP
Мощный инструмент навигации по базам данных MySQL/MariaDB, использующий MCP (протокол управления моделью) для простого выполнения запросов и управления базами данных.
Функции
Подключайтесь к базам данных MySQL/MariaDB
Динамическое переключение между различными базами данных
Выполнение SQL-запросов с безопасностью типов
Извлечь информацию о схеме базы данных
Проверка пидантической модели для параметров запроса
Безопасное управление учетными данными
Комплексная система регистрации
Механизмы объединения соединений и повторных попыток
Поддержка SSL/TLS для безопасных соединений
Related MCP server: Maya MCP
Расположение файла журнала (кроссплатформенное)
По умолчанию все журналы записываются в:
Windows:
C:\Users\<YourUsername>\.mcp\mcp-db.logmacOS/Linux:
/home/<yourusername>/.mcp/mcp-db.logили/Users/<yourusername>/.mcp/mcp-db.log
Если папка .mcp отсутствует в вашем домашнем каталоге, приложение автоматически ее создаст. Если у вас возникнут какие-либо проблемы, вы можете вручную создать папку:
Окна:
mkdir $env:USERPROFILE\.mcpmacOS/Linux:
mkdir -p ~/.mcpУстановка
Из PyPI (рекомендуется для большинства пользователей):
pip install mcp-db-navigatorИз источника (для разработки):
git clone <your-repo-url>
cd mcp-db
pip install -e .Создайте файл
.envс учетными данными вашей базы данных:
DB_HOST=your_host
DB_PORT=your_port
DB_NAME=your_database_name
DB_USER=your_username
DB_PASSWORD=your_password
DB_SSL_CA=/path/to/ssl/ca.pem # Optional: for SSL/TLS connections
DB_MAX_RETRIES=3 # Optional: number of connection retries
DB_RETRY_DELAY=1.0 # Optional: delay between retries in secondsПримеры использования
1. Командная строка
Запустите сервер MCP прямо с вашего терминала:
mcp-db --config /path/to/your/project/.env2. В курсоре
Чтобы использовать этот MCP-сервер в Cursor :
Откройте настройки курсора и добавьте новый сервер MCP.
Используйте следующую конфигурацию (пример):
{
"mcpServers": {
"mysql-navigator": {
"command": "mcp-db",
"args": [
"--config",
"/absolute/path/to/your/.env"
]
}
}
}Убедитесь, что путь к файлу
.envявляется абсолютным.
3. В Клоде Десктоп
Если Claude Desktop поддерживает серверы MCP:
Добавьте новый сервер MCP и укажите его в команде
mcp-dbс аргументом--config, как указано выше.Подробную информацию о добавлении пользовательских серверов MCP смотрите в документации Claude Desktop.
Параметры запроса
Словарь запросов поддерживает следующие параметры:
table_name(обязательно): Имя таблицы для запросаselect_fields(необязательно): Список полей для выбора (по умолчанию ["*"])where_conditions(необязательно): Словарь пар поле-значение для предложения WHEREorder_by(необязательно): Список полей для сортировкиorder_direction(необязательно): Направление сортировки «ASC» или «DESC» (по умолчанию: «ASC»)limit(необязательно): количество возвращаемых записейoffset(необязательно): количество записей, которые нужно пропуститьgroup_by(необязательно): Список полей для группировкиhaving(необязательно): Словарь пар поле-значение для предложения HAVINGjoin_table(необязательно): Имя таблицы, к которой нужно присоединитьсяjoin_type(необязательно): Тип операции JOIN (по умолчанию: «INNER»)join_conditions(необязательно): Словарь условий соединения
Функции безопасности
Учетные данные базы данных управляются через файл конфигурации.
В моделях Pydantic пароли хранятся как SecretStr.
Проверка входных данных для всех параметров запроса
Предотвращение SQL-инъекций с помощью параметризованных запросов
Поддержка SSL/TLS для зашифрованных соединений
Очистка строки подключения
Ограничение скорости запросов
Очистка параметров запроса
Особенности производства
Обработка ошибок
Комплексная обработка ошибок при работе с базами данных
Обработка тайм-аута соединения
Механизм автоматического повтора попыток при неудачных соединениях
Проверка ввода всех параметров
Производительность
Объединение подключений для оптимального использования ресурсов
Регистрация времени выполнения запроса
Статистика пула подключений
Сбор показателей производительности
Мониторинг
Структурированное ведение журнала с различными уровнями ведения журнала
Отслеживание выполнения запроса
Мониторинг состояния соединения
Отслеживание частоты ошибок
Внося вклад
Форк репозитория
Создайте ветку функций (
git checkout -b feature/amazing-feature)Зафиксируйте свои изменения (
git commit -m 'Add some amazing feature')Отправить в ветку (
git push origin feature/amazing-feature)Открыть запрос на извлечение
Лицензия
Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.