mcp-server-mysql について
mcp-server-mysql は、LLM が MySQL のスキーマを確認し、読み取り専用クエリを実行するための MCP サーバーです。クエリは読み取り専用トランザクション内で実行され、Docker または npm で利用できます。
主な機能
- 01MySQL スキーマの確認
- 02読み取り専用クエリの実行
- 03READ ONLY トランザクションの使用
- 04Docker 対応
- 05NPM パッケージの提供
活用シーン
- 01MySQL データベースのスキーマ確認
- 02データを変更せずにクエリを実行
MCP 対応
MCP クライアントに MySQL スキーマの確認と読み取り専用クエリの実行機能を提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-server-mysql
MySQL データベース向けの Model Context Protocol サーバーです。このサーバーを使うと、LLM がデータベースのスキーマを調査し、読み取り専用クエリを実行できます。
特長
- MySQL データベースへの読み取り専用アクセス
- スキーマの調査機能
- READ ONLY トランザクション内での安全なクエリ実行
- Docker に対応
- NPM パッケージを利用可能
インストール
Docker を使用する場合
# Build the Docker image
make docker
# Run with Docker
docker run -i --rm mcp/mysql mysql://host:port/dbname
Smithery 経由でインストールする場合
Smithery 経由で、Claude Desktop 用の MySQL Database Server を自動的にインストールするには、次の手順を実行します。
npx -y @smithery/cli install @yuru-sha/mcp-server-mysql --client claude
使用方法
Claude Desktop で使用する場合
claude_desktop_config.json に次の設定を追加します。
{
"mcpServers": {
"mysql": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp/mysql",
"mysql://host:port/dbname"
]
}
}
}
注:macOS で Docker を使用する場合、MySQL サーバーがホストのネットワーク上で実行されているときは、host.docker.internal を使用してください。
接続 URL の形式
mysql://[user][:password]@host[:port]/database
/database をデータベース名に置き換えてください。
開発
# Initial setup
make setup
# Build the project
make build
# Format code
make format
# Run linter
make lint
ライセンス
このプロジェクトは MIT License のもとで公開されています。
セキュリティ
このサーバーは、データベースを保護するため、読み取り専用アクセスを強制します。すべてのクエリは READ ONLY トランザクション内で実行されます。
セキュリティをさらに強化するため、読み取り専用ユーザーを作成することをおすすめします。
コントリビューション
コントリビューションを歓迎します。お気軽に Pull Request を送信してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。