mysql-mcp-server
0. 実行
Dockerで実行する
必要に応じてデータベース接続情報を変更します。
Docker Composeで実行する
事前に設定されたセットアップで続行されます。
Pythonで直接実行する
カーソルの設定
MCP 機能は、Cursor バージョン 0.46 以降で利用できます。
さらに、MCP 機能は Cursor Pro アカウント ユーザーのみがアクセスできます。
ツール追加のヒント
ツールの追加
execute
関数は実際のロジック実行 (サービス層) を実装します。@tool
デコレータは、ツールを MCP (コントローラー レイヤー) に登録するのに役立ちます。
説明
mysql_mcp_server/executors
下の各ファイルは、単一のツールを表します。新しいツールが追加された場合は、
mysql_mcp_server/executors/__init__.py
にインポートし、__all__
配列に含める必要があります。これにより、モジュールが
TOOLS_DEFINITION
変数に自動的に登録されます。
🚧 開発ロードマップ 🚧
⚙️ パラメータオプション
[ ] 🔧 ツールごとの有効/無効スイッチ:入力コンテキストのコストを削減する機能を提供する 💰
[ ] 🔒 クエリセキュリティレベルの設定: DROP、DELETE、UPDATE など、資産価値を損なう可能性のある機能に対するオプションの制御を提供します🚫
✨ 特徴
[x] 📊 データ分析レポート生成: ユーザーの要求に応じてさまざまなチャートを適切に選択できるようにモデルに最適化されたレポート生成機能を提供します 📈
[x] 📝 規定フォームのレポート機能
[ ] 🖌️ レポートテンプレートの多様化
[ ] 🗄️ 拡張された Text2SQL サポート
[ ] 🌐 SSH接続サポート: 高度な操作のためにSSH経由の安全なリモートアクセスを有効にします🔑
[ ] 📥 ファイル抽出機能
[ ] 📄 CSV
[ ] 📑 JSON
[ ] 📉 エクセル
1. 概要
MCP MySQL Serverは、MCP(Model Context Protocol)に基づいたMySQLデータベース操作用のサーバーアプリケーションです。このサーバーは、AIモデルがMySQLデータベースと連携するためのツールを提供します。
2. システム構成
2.1 主要コンポーネント
MCPサーバー: AIモデルと通信するFastMCPサーバー
MySQLデータベース:データを管理および保存します
ツール: データベース操作を実行するエグゼキュータ
2.2 技術スタック
言語: Python
データベース: MySQL 8.0
主要ライブラリ:
mcp: AI通信のためのモデルコンテキストプロトコルを実装
PyMySQL: MySQLに接続してクエリを実行する
pandas: データを処理および分析する
python-dotenv: 環境変数を管理する
fire: コマンドラインインターフェースを実装する
2.3 デプロイメント環境
Docker と Docker Compose によるコンテナ化されたデプロイメント
ポート: 8081 (MCP サーバー)、3306 (MySQL)
3. ディレクトリ構造
4. 建築設計
4.1 階層構造
インターフェース層: MCP サーバー (FastMCP)
ビジネスロジック層: ハンドラーとエグゼキューター
データ アクセス層: データベース接続とクエリ実行
4.2 主要なクラスとモジュール
MySQLMCPServer : MCPサーバーを初期化して実行するメインサーバークラス
DatabaseManager : シングルトンパターンベースのデータベース接続マネージャー
Executors : データベース操作用のツールのコレクション
execute_create_table: テーブルを作成する
execute_desc_table: テーブルスキーマをチェックする
execute_explain: クエリ実行プランを提供する
execute_insert_query: INSETRクエリを実行する
execute_select_query: SELECTクエリを実行する
execute_show_tables: テーブルリストを取得します
4.3 通信フロー
AI モデルは、MCP サーバーから利用可能なツールのリストを要求します。
サーバーは利用可能なツールのリストを返します。
AI モデルは特定のツールの実行を要求します。
サーバーは対応するエグゼキュータを呼び出してデータベース操作を実行します。
実行結果は AI モデルに返されます。
5. スケーラビリティとメンテナンス
ツールの追加:
executors
ディレクトリに新しいツールを実装し、__init__.py
に登録します。環境構成:
.env
ファイルを介して環境変数を管理します。ログ記録:
logger_helper
を使用して一貫したログ記録を確保します。
6. 展開と実行
6.1 ローカル実行
6.2 Dockerのデプロイメント
7. セキュリティに関する考慮事項
環境変数を介してデータベース資格情報を管理します。
実稼働環境では強力なパスワードを使用します。
必要に応じて、データベース接続に SSL/TLS 暗号化を実装することを検討してください。
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
AI モデルがモデル制御プロトコルを介して MySQL データベースと対話できるようにし、テーブル作成、スキーマ検査、クエリ実行、データ取得のためのツールを提供するサーバー。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityThis server enables AI models to interact with MySQL databases through a standardized interface.Last updated -283114MIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI models to interact with MySQL databases, providing tools for querying, executing statements, listing tables, and describing table structures.Last updated -5283MIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that enables AI models to interact with MySQL databases through a standardized interface, providing tools for querying, executing commands, and managing database schemas.Last updated -7
- -securityFlicense-qualityA Model Context Protocol server that enables AI models to interact with MySQL databases through natural language, supporting SQL queries, table creation, and schema exploration.Last updated -3