hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides environment variable management for configuring database credentials and server settings through .env files.
Supports containerized deployment of the MCP server through Docker, allowing configuration of database connection parameters and port mappings.
Includes Mermaid diagram support for visualizing the server architecture and data flow between components.
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
- [ ] 📉 エクセル
- [x] 📊 データ分析レポート生成: ユーザーの要求に応じてさまざまなチャートを適切に選択できるようにモデルに最適化されたレポート生成機能を提供します 📈
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
AI モデルがモデル制御プロトコルを介して MySQL データベースと対話できるようにし、テーブル作成、スキーマ検査、クエリ実行、データ取得のためのツールを提供するサーバー。
- 0. Execution
- 🚧 Development Roadmap 🚧
- 1. Overview
- 2. System Configuration
- 3. Directory Structure
- 4. Architecture Design
- 5. Scalability and Maintenance
- 6. Deployment and Execution
- 7. Security Considerations