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
вариант
вариант | объяснение | Значение по умолчанию |
| MySQL-хост | локальный хост |
| MySQL-порт | 13306 |
| Пользователь MySQL | корень |
| Пароль MySQL | (пустая строка) |
| База данных по умолчанию | (вариант) |
| Путь к файлу конфигурации | (вариант) |
| Автоматически подключаться к базе данных при запуске сервера | ЛОЖЬ |
| Порт сервера MCP (не используется в режиме stdio) | 3000 |
| Хост сервера MCP (не используется в режиме stdio) | локальный хост |
| Время ожидания запроса (мс) | 30000 |
| Максимальное количество строк результата | 1000 |
| Режим отладки | ЛОЖЬ |
Сохраните и повторно используйте информацию о подключении
Сервер 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
Как использовать управление соединениями
Запустить сервер без автоподключения :
npx -y https://github.com/yuki777/mysql-mcp-serverПодключитесь к базе данных с помощью инструмента подключения (укажите имя профиля и сохраните его) :
{ "type": "tool_call", "request_id": "req_1", "tool": "connect_database", "arguments": { "host": "localhost", "port": 3306, "user": "root", "password": "your_password", "database": "your_db", "profileName": "my-db" } }Получить список профилей :
{ "type": "tool_call", "request_id": "req_2", "tool": "list_profiles", "arguments": {} }Подключиться по имени профиля :
{ "type": "tool_call", "request_id": "req_3", "tool": "connect_by_profile", "arguments": { "profileName": "my-db" } }Добавить новый профиль (без подключения) :
{ "type": "tool_call", "request_id": "req_4", "tool": "add_profile", "arguments": { "profileName": "production-db", "host": "prod.example.com", "port": 3306, "user": "prod_user", "password": "prod_password", "database": "production" } }Проверьте статус вашего подключения :
{ "type": "tool_call", "request_id": "req_5", "tool": "get_connection_status", "arguments": {} }Потеря связи :
{ "type": "tool_call", "request_id": "req_6", "tool": "disconnect_database", "arguments": {} }
Тестовый сценарий
Репозиторий включает тестовый скрипт под названием 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
- -security-license-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 -MIT License
YugabyteDB MCP Serverofficial
-security-license-qualityAn MCP server implementation that allows Large Language Models to directly interact with YugabyteDB databases, supporting table listing and read-only SQL queries.Last updated -8Apache 2.0- -security-license-qualityA Model Context Protocol (MCP) server that converts natural language queries into SQL statements, allowing users to query MySQL databases using conversational language instead of writing SQL code.Last updated -3
- -security-license-qualityAn MCP server that enables interaction with MySQL databases through the Model Context Protocol, allowing execution of SQL queries and database table listing operations from Cline AI.Last updated -