mcpField
M
MySQL MCP Server

MySQL MCP Server

ローカル
github.com/actstormsデータベース082 週間前に更新

MySQL MCP Server について

MySQL MCP Serverは、MCPクライアントからツール経由で設定済みのMySQLデータベースを検索・変更できるサーバーです。AIアシスタントからデータベースを利用する開発者向けで、書き込みは初期状態で無効です。

主な機能

  1. 01設定済みMySQLデータベースへの接続
  2. 02SELECT、SHOW、DESCRIBEの実行
  3. 03書き込み用の個別ツール
  4. 04環境変数による書き込み権限の制御
  5. 05stdioによる通信

活用シーン

  1. 01AIアシスタントからのMySQLデータ検索
  2. 02書き込みを有効にした状態でのレコード挿入や更新
  3. 03MCPクライアントによるデータベース構造の確認

MCP 対応

stdio経由でMCPクライアントにSQL検索および書き込みツールを提供します。INSERT、UPDATE、DELETEはMYSQL_ALLOW_WRITE_OPS=trueの場合のみ有効です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MySQL MCP サーバー

バージョン:0.1.0

MySQL データベースと連携するための Model Context Protocol(MCP)サーバーです。このサーバーを使用すると、MCP クライアント(AI アシスタントなど)から、設定済みの MySQL データベースのデータを照会および変更できます。

機能

  • 標準的な接続パラメーターを使用して MySQL データベースに接続します。
  • SQL クエリおよびステートメントを実行する MCP ツールを提供します。
  • 読み取り専用クエリ(SELECT、SHOW、DESCRIBE)をサポートします。
  • 書き込み操作(INSERT、UPDATE、DELETE)を個別のツールでサポートし、環境変数(MYSQL_ALLOW_WRITE_OPS)で有効化します。
  • 標準入力/出力(stdio)を介して通信します。

インストール

# Install as a project dependency (recommended for use within another project)
npm install

# Or, if intended as a standalone global tool:
# 1. Build the project:
#    npm run build
# 2. Link it globally:
#    npm link 
#    (or use `npm install -g .` if publishing)

設定

データベースへの接続には、次の環境変数を設定する必要があります。

  • MYSQL_HOST:MySQL サーバーのホスト名または IP アドレス。
  • MYSQL_USER:データベースへの接続に使用するユーザー名。
  • MYSQL_PASSWORD:指定したユーザーのパスワード。
  • MYSQL_DATABASE:接続するデータベース名。
  • MYSQL_PORT:(任意)MySQL サーバーのポート番号(デフォルトは 3306)。
  • MYSQL_ALLOW_WRITE_OPS:(任意)true に設定すると、insert、update、delete ツールが有効になります。デフォルトは false(書き込み操作は無効)です。警告: 書き込み操作を有効にすると、MCP クライアントがデータベースを変更できるようになります。慎重に使用してください。

これらの変数は、サーバープロセスを起動する環境で利用できるようにする必要があります。設定方法は、オペレーティングシステムやサーバーの起動方法(例:.env ファイル、システム環境変数、シェルでのエクスポート)によって異なります。

使用方法

設定とビルド(npm run build)が完了したら、サーバーを実行できます。

# If linked globally
mysql-server

# Or run directly using node
node build/index.js 

サーバーが起動すると、標準エラー出力に MySQL MCP server running on stdio と表示され、標準入力/出力で MCP リクエストを待ち受けます。通常は、MCP クライアント(AI アシスタントとの連携機能など)を設定し、このサーバープロセスに接続します。

利用可能なツール

このサーバーは、MCP クライアントが使用できる次のツールを公開します。

1. query
  • 説明: 設定済みのデータベースに対して、読み取り専用の SQL クエリ(SELECT、SHOW、DESCRIBE)を実行します。
  • 入力スキーマ:
    {
      "type": "object",
      "properties": {
        "sql": {
          "type": "string",
          "description": "実行する読み取り専用 SQL クエリ(SELECT、SHOW、DESCRIBE)。"
        }
      },
      "required": ["sql"]
    }
    
  • 出力: クエリ結果を、MCP レスポンスの content 内に JSON 文字列として返します。クエリが読み取り専用でない場合、またはデータベースエラーが発生した場合は、エラーを返します。
2. insert
  • 説明: INSERT SQL ステートメントを実行します。MYSQL_ALLOW_WRITE_OPS を true に設定する必要があります。
  • 入力スキーマ:
    {
      "type": "object",
      "properties": {
        "sql": {
          "type": "string",
          "description": "実行する INSERT SQL ステートメント。"
        }
      },
      "required": ["sql"]
    }
    
  • 出力: 影響を受けた行数と挿入 ID(該当する場合)を含む成功メッセージを返します。操作に失敗した場合、または書き込み操作が無効の場合は、エラーメッセージを返します。
3. update
  • 説明: UPDATE SQL ステートメントを実行します。MYSQL_ALLOW_WRITE_OPS を true に設定する必要があります。
  • 入力スキーマ:
    {
      "type": "object",
      "properties": {
        "sql": {
          "type": "string",
          "description": "実行する UPDATE SQL ステートメント。"
        }
      },
      "required": ["sql"]
    }
    
  • 出力: 影響を受けた行数を含む成功メッセージを返します。操作に失敗した場合、または書き込み操作が無効の場合は、エラーメッセージを返します。
4. delete
  • 説明: DELETE SQL ステートメントを実行します。MYSQL_ALLOW_WRITE_OPS を true に設定する必要があります。
  • 入力スキーマ:
    {
      "type": "object",
      "properties": {
        "sql": {
          "type": "string",
          "description": "実行する DELETE SQL ステートメント。"
        }
      },
      "required": ["sql"]
    }
    
  • 出力: 影響を受けた行数を含む成功メッセージを返します。操作が失敗した場合、または書き込み操作が無効になっている場合は、エラーメッセージを返します。

開発

サーバーコードを操作するには、次の手順に従います。

  1. リポジトリをクローンします:(該当する場合)
    # git clone <repository-url>
    # cd mysql-server
    
  2. 依存関係をインストールします:
    npm install
    
  3. コードをビルドします:(TypeScript を JavaScript にコンパイルし、build/ に出力します)
    npm run build
    
  4. 変更を監視します:(変更時に自動的に再コンパイルします)
    npm run watch
    
  5. MCP Inspector を実行します:(サーバーをローカルでテスト/デバッグするため)
    # Make sure you have built the code first
    npm run inspector 
    

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。