Skip to main content
Glama

MySQL MCP Server

by yuki777

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

npx -y https://github.com/yuki777/mysql-mcp-server --host 127.0.0.1 --port 13306 --user root

вариант

вариант

объяснение

Значение по умолчанию

-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):

{ "server": { "port": 3000, "host": "localhost" }, "mysql": { "host": "localhost", "port": 13306, "user": "root", "password": "yourpassword", "database": "mydb" }, "debug": false, "queryTimeout": 30000, "maxResultSize": 1000 }

Если вы используете файл конфигурации:

npx -y https://github.com/yuki777/mysql-mcp-server -c ./mysql-mcp-config.json

Метод связи

Сервер MySQL MCP работает в режиме «stdio» в соответствии с протоколом MCP (Model Context Protocol). Это позволяет ему взаимодействовать через стандартный ввод и вывод, а не привязываться к определенному порту. Это имеет следующие преимущества:

  1. Избегайте конфликтов портов : не используются никакие определенные порты, поэтому не возникает проблем с конфликтами портов.

  2. Улучшенная безопасность : сетевое взаимодействие не используется, что снижает риск атак на сетевом уровне.

  3. Простая межпроцессная коммуникация : упрощенная коммуникация с LLM

Важные моменты, на которые следует обратить внимание

  • В режиме stdio сообщения отправляются в формате JSON.

  • Необходимо отправить одно сообщение JSON на строку.

  • Информация об ошибках и журналы подключений выводятся в стандартный поток ошибок (stderr).

Предоставляемые инструменты MCP

Управление подключением к базе данных

Название инструмента

объяснение

Требуемые параметры

подключение_базы_данных

Подключиться к базе данных

хост, порт, пользователь

connect_by_profile

Подключитесь с сохраненным именем профиля

Имя профиля

отключить_базу_данных

Отключает текущее соединение с базой данных.

никто

получить_статус_подключения

Получает статус соединения с базой данных

никто

Управление профилем подключения

Название инструмента

объяснение

Требуемые параметры

список_профилей

Получает список сохраненных профилей

никто

получить_профиль

Получить данные профиля

Имя профиля

добавить_профиль

Добавить новый профиль

Имя профиля, хост, порт, пользователь

удалить_профиль

Удалить профиль

Имя профиля

Операции SQL-запросов

Название инструмента

объяснение

Требуемые параметры

выполнить_запрос

Выполнить запрос MySQL

запрос: оператор SQL

получить_базы_данных

Получить список доступных баз данных

никто

получить_таблицы

Получает список таблиц в указанной базе данных.

база данных (необязательно)

описать_таблицу

Получает структуру указанной таблицы.

стол

Функция управления соединением

MySQL MCP Server позволяет разделить запуск сервера и подключения к базе данных. Такой подход обеспечивает следующие преимущества:

  1. Запуск без информации о подключении : сервер можно запустить без информации о подключении к базе данных.

  2. Несколько подключений к базам данных : вы можете переключать подключения к разным базам данных после запуска сервера.

  3. Простая установка : просто запустите npx -y https://github.com/yuki777/mysql-mcp-server

Как использовать управление соединениями

  1. Запустить сервер без автоподключения :

    npx -y https://github.com/yuki777/mysql-mcp-server
  2. Подключитесь к базе данных с помощью инструмента подключения (укажите имя профиля и сохраните его) :

    { "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" } }
  3. Получить список профилей :

    { "type": "tool_call", "request_id": "req_2", "tool": "list_profiles", "arguments": {} }
  4. Подключиться по имени профиля :

    { "type": "tool_call", "request_id": "req_3", "tool": "connect_by_profile", "arguments": { "profileName": "my-db" } }
  5. Добавить новый профиль (без подключения) :

    { "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" } }
  6. Проверьте статус вашего подключения :

    { "type": "tool_call", "request_id": "req_5", "tool": "get_connection_status", "arguments": {} }
  7. Потеря связи :

    { "type": "tool_call", "request_id": "req_6", "tool": "disconnect_database", "arguments": {} }

Тестовый сценарий

Репозиторий включает тестовый скрипт под названием test-connection-management.js . Вы можете использовать этот скрипт для проверки функциональности управления соединениями:

node test-connection-management.js

Информация для разработчиков

Настройка среды разработки

# リポジトリのクローン git clone [repository-url] cd mysql-mcp-server # 依存関係のインストール npm install # 開発モードでの実行 npm run dev

Строить

npm run build

лицензия

МСК

вклад

Сообщения об ошибках, запросы на новые функции и предложения по их внесению приветствуются.

-
security - not tested
-
license - not tested
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Инструмент, который подключается к локальным базам данных MySQL и позволяет большим языковым моделям (LLM) выполнять SQL-запросы через протокол контекста модели (MCP).

  1. Требования
    1. функция
      1. Установка и использование
        1. Временное исполнение в NPX
        2. вариант
        3. Сохраните и повторно используйте информацию о подключении
        4. Использование файлов конфигурации
      2. Метод связи
        1. Важные моменты, на которые следует обратить внимание
      3. Предоставляемые инструменты MCP
        1. Управление подключением к базе данных
        2. Управление профилем подключения
        3. Операции SQL-запросов
      4. Функция управления соединением
        1. Как использовать управление соединениями
        2. Тестовый сценарий
      5. Информация для разработчиков
        1. Настройка среды разработки
        2. Строить
      6. лицензия
        1. вклад

          Related MCP Servers

          • -
            security
            -
            license
            -
            quality
            A 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
            • Apple
            • Linux
          • -
            security
            -
            license
            -
            quality
            An MCP server implementation that allows Large Language Models to directly interact with YugabyteDB databases, supporting table listing and read-only SQL queries.
            Last updated -
            8
            Apache 2.0
            • Apple
          • -
            security
            -
            license
            -
            quality
            A 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
            -
            quality
            An 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 -

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/yuki777/mysql-mcp-server'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server