Connects to a MySQL database, allowing LLMs to execute SQL queries, retrieve database information (databases, tables, and table structures), with configurable query timeout and result size limits.
MySQL MCP-сервер
Сервер протокола контекста модели MySQL (MCP) — это инструмент, который позволяет подключаться к локальной базе данных MySQL и разрешать большим языковым моделям (LLM) выполнять SQL-запросы к ней.
Требования
- Node.js : 20.0.0 или более поздняя версия
- MySQL : сервер MySQL или MariaDB версии 5.7 или более поздней
функция
- Выполнение запросов MySQL : выполнение запросов SQL напрямую из LLM
- Получение информации о базе данных : список баз данных, список таблиц, подтверждение структуры таблицы
- Совместимость с MCP : поддерживает протокол контекста модели и может быть интегрирован с LLM
- stdio-коммуникация : взаимодействие с LLM с использованием стандартного ввода/вывода, без привязки к порту
- Управление профилем подключения : управление и переключение между несколькими настройками подключения по имени профиля.
- Сохранение информации о подключении : сохранение информации о подключении к базе данных локально и ее повторное использование.
Установка и использование
Временное исполнение в NPX
вариант
вариант | объяснение | Значение по умолчанию |
---|---|---|
-h, --host <host> | MySQL-хост | локальный хост |
-p, --port <port> | MySQL-порт | 13306 |
-u, --user <user> | Пользователь MySQL | корень |
--password <password> | Пароль MySQL | (пустая строка) |
-d, --database <database> | База данных по умолчанию | (вариант) |
-c, --config <path> | Путь к файлу конфигурации | (вариант) |
--auto-connect | Автоматически подключаться к базе данных при запуске сервера | ЛОЖЬ |
--server-port <port> | Порт сервера MCP (не используется в режиме stdio) | 3000 |
--server-host <host> | Хост сервера MCP (не используется в режиме stdio) | локальный хост |
--query-timeout <ms> | Время ожидания запроса (мс) | 30000 |
--max-results <count> | Максимальное количество строк результата | 1000 |
--debug | Режим отладки | ЛОЖЬ |
Сохраните и повторно используйте информацию о подключении
Сервер MySQL MCP хранит информацию об успешно подключенных базах данных локально в виде именованных профилей. Это позволяет повторно использовать информацию о соединении по имени при следующем вызове. Сохраненная информация о подключении хранится в файле .mysql-mcp-connections.json
в домашнем каталоге пользователя.
Каждый профиль подключения включает в себя:
- Имя профиля
- Имя хоста
- Номер порта
- Имя пользователя
- пароль
- Имя базы данных (если установлено)
Вы можете управлять несколькими подключениями к базам данных по имени профиля и легко переключаться между ними.
Использование файлов конфигурации
Вы также можете настроить информацию о подключении с помощью файла конфигурации (в формате JSON):
Если вы используете файл конфигурации:
Метод связи
Сервер MySQL MCP работает в режиме «stdio» в соответствии с протоколом MCP (Model Context Protocol). Это позволяет ему взаимодействовать через стандартный ввод и вывод, а не привязываться к определенному порту. Это имеет следующие преимущества:
- Избегайте конфликтов портов : не используются никакие определенные порты, поэтому не возникает проблем с конфликтами портов.
- Улучшенная безопасность : сетевое взаимодействие не используется, что снижает риск атак на сетевом уровне.
- Простая межпроцессная коммуникация : упрощенная коммуникация с LLM
Важные моменты, на которые следует обратить внимание
- В режиме stdio сообщения отправляются в формате JSON.
- Необходимо отправить одно сообщение JSON на строку.
- Информация об ошибках и журналы подключений выводятся в стандартный поток ошибок (stderr).
Предоставляемые инструменты MCP
Управление подключением к базе данных
Название инструмента | объяснение | Требуемые параметры |
---|---|---|
подключение_базы_данных | Подключиться к базе данных | хост, порт, пользователь |
connect_by_profile | Подключитесь с сохраненным именем профиля | Имя профиля |
отключить_базу_данных | Отключает текущее соединение с базой данных. | никто |
получить_статус_подключения | Получает статус соединения с базой данных | никто |
Управление профилем подключения
Название инструмента | объяснение | Требуемые параметры |
---|---|---|
список_профилей | Получает список сохраненных профилей | никто |
получить_профиль | Получить данные профиля | Имя профиля |
добавить_профиль | Добавить новый профиль | Имя профиля, хост, порт, пользователь |
удалить_профиль | Удалить профиль | Имя профиля |
Операции SQL-запросов
Название инструмента | объяснение | Требуемые параметры |
---|---|---|
выполнить_запрос | Выполнить запрос MySQL | запрос: оператор SQL |
получить_базы_данных | Получить список доступных баз данных | никто |
получить_таблицы | Получает список таблиц в указанной базе данных. | база данных (необязательно) |
описать_таблицу | Получает структуру указанной таблицы. | стол |
Функция управления соединением
MySQL MCP Server позволяет разделить запуск сервера и подключения к базе данных. Такой подход обеспечивает следующие преимущества:
- Запуск без информации о подключении : сервер можно запустить без информации о подключении к базе данных.
- Несколько подключений к базам данных : вы можете переключать подключения к разным базам данных после запуска сервера.
- Простая установка : просто запустите
npx -y https://github.com/yuki777/mysql-mcp-server
Как использовать управление соединениями
- Запустить сервер без автоподключения :
- Подключитесь к базе данных с помощью инструмента подключения (укажите имя профиля и сохраните его) :
- Получить список профилей :
- Подключиться по имени профиля :
- Добавить новый профиль (без подключения) :
- Проверьте статус вашего подключения :
- Потеря связи :
Тестовый сценарий
Репозиторий включает тестовый скрипт под названием test-connection-management.js
. Вы можете использовать этот скрипт для проверки функциональности управления соединениями:
Информация для разработчиков
Настройка среды разработки
Строить
лицензия
МСК
вклад
Сообщения об ошибках, запросы на новые функции и предложения по их внесению приветствуются.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Инструмент, который подключается к локальным базам данных MySQL и позволяет большим языковым моделям (LLM) выполнять SQL-запросы через протокол контекста модели (MCP).
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that provides read-only access to MySQL databases, enabling LLMs to inspect database schemas and execute read-only queries.Last updated -1,363350TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server providing read-only access to MySQL databases, enabling LLMs to inspect database schemas and execute read-only queries.Last updated -1,363TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that provides read-only access to MySQL databases, enabling LLMs to inspect database schemas and execute read-only queries.Last updated -1,363MIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables AI assistants to interact with MySQL databases by executing SQL queries and checking database connectivity.Last updated -TypeScriptMIT License