Skip to main content
Glama

MySQL MCP Server

by yuki777

MySQL MCP-Server

Der MySQL Model Context Protocol (MCP)-Server ist ein Tool, mit dem Sie eine Verbindung zu einer lokalen MySQL-Datenbank herstellen und großen Sprachmodellen (LLMs) erlauben können, SQL-Abfragen darauf auszuführen.

Anforderungen

  • Node.js : 20.0.0 oder höher

  • MySQL : MySQL- oder MariaDB-Serverversion 5.7 oder höher

Funktion

  • MySQL-Abfragen ausführen : Führen Sie SQL-Abfragen direkt von LLM aus aus

  • Datenbankinformationen abrufen : Liste der Datenbanken, Liste der Tabellen, Tabellenstruktur bestätigen

  • MCP-kompatibel : Unterstützt Model Context Protocol und kann in LLM integriert werden

  • stdio-Kommunikation : Kommunikation mit LLM über Standard-Ein-/Ausgabe, keine Portbindung

  • Verbindungsprofilverwaltung : Verwalten und wechseln Sie zwischen mehreren Verbindungseinstellungen nach Profilnamen

  • Verbindungsinformationen speichern : Datenbankverbindungsinformationen lokal speichern und wiederverwenden

Installation und Verwendung

Vorübergehende Ausführung in NPX

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

Option

Option

Erläuterung

Standardwert

-h, --host <host>

MySQL-Host

lokaler Host

-p, --port <port>

MySQL-Port

13306

-u, --user <user>

MySQL-Benutzer

Wurzel

--password <password>

MySQL-Passwort

(leere Zeichenfolge)

-d, --database <database>

Standarddatenbank

(Option)

-c, --config <path>

Pfad der Konfigurationsdatei

(Option)

--auto-connect

Beim Serverstart automatisch eine Verbindung zur Datenbank herstellen

FALSCH

--server-port <port>

MCP-Server-Port (wird im Standardmodus nicht verwendet)

3000

--server-host <host>

MCP-Server-Host (wird im Standardmodus nicht verwendet)

lokaler Host

--query-timeout <ms>

Abfrage-Timeout (ms)

30000

--max-results <count>

Maximale Ergebniszeilen

1000

--debug

Debug-Modus

FALSCH

Verbindungsinformationen speichern und wiederverwenden

MySQL MCP Server speichert Informationen über erfolgreich verbundene Datenbanken lokal als benannte Profile. Dadurch können Sie die Verbindungsinformationen bei nachfolgenden Aufrufen anhand des Namens wiederverwenden. Gespeicherte Verbindungsinformationen werden in .mysql-mcp-connections.json im Home-Verzeichnis des Benutzers gespeichert.

Jedes Verbindungsprofil umfasst:

  • Profilname

  • Hostname

  • Portnummer

  • Benutzername

  • Passwort

  • Datenbankname (falls festgelegt)

Sie können mehrere Datenbankverbindungen nach Profilnamen verwalten und einfach zwischen ihnen wechseln.

Verwenden von Konfigurationsdateien

Sie können die Verbindungsinformationen auch mithilfe einer Konfigurationsdatei (im JSON-Format) konfigurieren:

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

Wenn Sie eine Konfigurationsdatei verwenden:

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

Kommunikationsmethode

Der MySQL MCP-Server arbeitet im „stdio“-Modus gemäß MCP (Model Context Protocol). Dadurch kann über die Standardeingabe und -ausgabe kommuniziert werden, anstatt an einen bestimmten Port gebunden zu sein. Dies hat folgende Vorteile:

  1. Vermeiden Sie Portkonflikte : Es werden keine bestimmten Ports verwendet, daher treten keine Portkonflikte auf

  2. Verbesserte Sicherheit : Es wird keine Netzwerkkommunikation verwendet, wodurch das Risiko von Angriffen auf Netzwerkebene verringert wird

  3. Einfache Interprozesskommunikation : Vereinfachte Kommunikation mit LLM

Wichtige Hinweise

  • Im Standardmodus werden Nachrichten im JSON-Format gesendet.

  • Sie müssen eine JSON-Nachricht pro Zeile senden

  • Fehlerinformationen und Verbindungsprotokolle werden an den Standardfehler (stderr) ausgegeben.

Bereitgestellte MCP-Tools

Datenbankverbindungsverwaltung

Werkzeugname

Erläuterung

Erforderliche Parameter

Datenbank verbinden

Herstellen einer Verbindung zur Datenbank

Host, Port, Benutzer

Verbinden nach Profil

Mit einem gespeicherten Profilnamen verbinden

Profilname

Datenbank trennen

Trennt die aktuelle Datenbankverbindung

keiner

Verbindungsstatus abrufen

Ruft den Status der Datenbankverbindung ab

keiner

Verbindungsprofilverwaltung

Werkzeugname

Erläuterung

Erforderliche Parameter

Listenprofile

Ruft eine Liste der gespeicherten Profile ab

keiner

Profil abrufen

Profildetails abrufen

Profilname

Profil hinzufügen

Neues Profil hinzufügen

Profilname, Host, Port, Benutzer

Profil entfernen

Löschen des Profils

Profilname

SQL-Abfrageoperationen

Werkzeugname

Erläuterung

Erforderliche Parameter

Abfrage ausführen

Ausführen einer MySQL-Abfrage

Abfrage: SQL-Anweisung

Datenbanken abrufen

Holen Sie sich eine Liste der verfügbaren Datenbanken

keiner

Tabellen abrufen

Ruft eine Liste der Tabellen in einer angegebenen Datenbank ab.

Datenbank (optional)

Tabelle beschreiben

Ruft die Struktur der angegebenen Tabelle ab.

Tisch

Verbindungsverwaltungsfunktion

Mit MySQL MCP Server können Sie Serverstart und Datenbankverbindungen trennen. Dieser Ansatz bietet die folgenden Vorteile:

  1. Starten ohne Verbindungsinformationen : Der Server kann ohne Datenbankverbindungsinformationen gestartet werden.

  2. Mehrere Datenbankverbindungen : Sie können nach dem Start des Servers zwischen Verbindungen zu verschiedenen Datenbanken wechseln.

  3. Einfache Installation : Führen Sie einfach npx -y https://github.com/yuki777/mysql-mcp-server aus

So verwenden Sie die Verbindungsverwaltung

  1. Starten Sie den Server ohne automatische Verbindung :

    npx -y https://github.com/yuki777/mysql-mcp-server
  2. Stellen Sie mithilfe des Verbindungstools eine Verbindung zur Datenbank her (geben Sie einen Profilnamen an und speichern Sie ihn) :

    { "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. Holen Sie sich eine Liste der Profile :

    { "type": "tool_call", "request_id": "req_2", "tool": "list_profiles", "arguments": {} }
  4. Über den Profilnamen verbinden :

    { "type": "tool_call", "request_id": "req_3", "tool": "connect_by_profile", "arguments": { "profileName": "my-db" } }
  5. Ein neues Profil hinzufügen (ohne Verbindung) :

    { "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. Überprüfen Sie Ihren Verbindungsstatus :

    { "type": "tool_call", "request_id": "req_5", "tool": "get_connection_status", "arguments": {} }
  7. Verbindungsverlust :

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

Testskript

Das Repository enthält ein Testskript namens test-connection-management.js . Mit diesem Skript können Sie die Verbindungsverwaltungsfunktion testen:

node test-connection-management.js

Entwicklerinformationen

Einrichten Ihrer Entwicklungsumgebung

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

Bauen

npm run build

Lizenz

ISC

Beitrag

Fehlerberichte, Funktionsanfragen und Pull-Anfragen sind willkommen.

-
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.

Ein Tool, das eine Verbindung zu lokalen MySQL-Datenbanken herstellt und es großen Sprachmodellen (LLMs) ermöglicht, SQL-Abfragen über das Model Context Protocol (MCP) auszuführen.

  1. Anforderungen
    1. Funktion
      1. Installation und Verwendung
        1. Vorübergehende Ausführung in NPX
        2. Option
        3. Verbindungsinformationen speichern und wiederverwenden
        4. Verwenden von Konfigurationsdateien
      2. Kommunikationsmethode
        1. Wichtige Hinweise
      3. Bereitgestellte MCP-Tools
        1. Datenbankverbindungsverwaltung
        2. Verbindungsprofilverwaltung
        3. SQL-Abfrageoperationen
      4. Verbindungsverwaltungsfunktion
        1. So verwenden Sie die Verbindungsverwaltung
        2. Testskript
      5. Entwicklerinformationen
        1. Einrichten Ihrer Entwicklungsumgebung
        2. Bauen
      6. Lizenz
        1. Beitrag

          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