Skip to main content
Glama

MySQL Navigator MCP

by Medsaad
MIT License
6
  • Linux
  • Apple

MySQL ナビゲーター MCP

MCP (モデル制御プロトコル) を使用してデータベースのクエリと管理を簡単にする強力な MySQL/MariaDB データベース ナビゲーション ツールです。

特徴

  • MySQL/MariaDB データベースに接続する

  • 異なるデータベース間を動的に切り替える

  • 型安全性を考慮したSQLクエリを実行する

  • データベーススキーマ情報を取得する

  • クエリパラメータのPydanticモデル検証

  • 安全な資格情報管理

  • 包括的なログシステム

  • 接続プールと再試行メカニズム

  • 安全な接続のためのSSL/TLSサポート

ログファイルの場所(クロスプラットフォーム)

デフォルトでは、すべてのログは次の場所に書き込まれます。

  • Windows: C:\Users\<YourUsername>\.mcp\mcp-db.log

  • macOS/Linux: /home/<yourusername>/.mcp/mcp-db.logユーザー名>/.mcp/mcp-db.log または/Users/<yourusername>/.mcp/mcp-db.log mcp-db.log

ホームディレクトリに.mcpフォルダが存在しない場合は、アプリケーションが自動的に作成します。問題が発生した場合は、手動でフォルダを作成してください。

ウィンドウズ:

mkdir $env:USERPROFILE\.mcp

macOS/Linux:

mkdir -p ~/.mcp

インストール

PyPI から (ほとんどのユーザーに推奨):

pip install mcp-db-navigator

ソースから(開発用):

git clone <your-repo-url> cd mcp-db pip install -e .
  1. データベースの資格情報を使用して.envファイルを作成します。

DB_HOST=your_host DB_PORT=your_port DB_NAME=your_database_name DB_USER=your_username DB_PASSWORD=your_password DB_SSL_CA=/path/to/ssl/ca.pem # Optional: for SSL/TLS connections DB_MAX_RETRIES=3 # Optional: number of connection retries DB_RETRY_DELAY=1.0 # Optional: delay between retries in seconds

使用例

1. コマンドライン

ターミナルから直接 MCP サーバーを実行します。

mcp-db --config /path/to/your/project/.env

2. カーソル内

この MCP サーバーをCursorで使用するには:

  • カーソル設定を開き、新しい MCP サーバーを追加します。

  • 次の構成を使用します (例)。

{ "mcpServers": { "mysql-navigator": { "command": "mcp-db", "args": [ "--config", "/absolute/path/to/your/.env" ] } } }
  • .envファイルへのパスが絶対パスであることを確認してください。

3. クロードデスクトップ

Claude Desktop が MCP サーバーをサポートしている場合:

  • 新しい MCP サーバーを追加し、上記のように--config引数を使用してmcp-dbコマンドにポイントします。

  • カスタム MCP サーバーの追加の詳細については、Claude Desktop のドキュメントを参照してください。

クエリパラメータ

クエリ辞書は次のパラメータをサポートしています。

  • table_name (必須): クエリするテーブルの名前

  • select_fields (オプション): 選択するフィールドのリスト (デフォルトは ["*"])

  • where_conditions (オプション): WHERE句のフィールドと値のペアの辞書

  • order_by (オプション): 並べ替えの基準となるフィールドのリスト

  • order_direction (オプション): 並べ替えの方向「ASC」または「DESC」(デフォルト:「ASC」)

  • limit (オプション): 返されるレコードの数

  • offset (オプション):スキップするレコード数

  • group_by (オプション): グループ化するフィールドのリスト

  • having (オプション): HAVING句のフィールドと値のペアの辞書

  • join_table (オプション): 結合するテーブルの名前

  • join_type (オプション): JOIN操作のタイプ (デフォルト: "INNER")

  • join_conditions (オプション): 結合条件の辞書

セキュリティ機能

  • データベースの資格情報は設定ファイルを通じて管理されます

  • パスワードはPydanticモデルではSecretStrとして保存されます

  • すべてのクエリパラメータの入力検証

  • パラメータ化されたクエリによるSQLインジェクション防止

  • 暗号化された接続のためのSSL/TLSサポート

  • 接続文字列のサニタイズ

  • クエリのレート制限

  • クエリパラメータのサニタイズ

生産機能

エラー処理

  • データベース操作の包括的なエラー処理

  • 接続タイムアウト処理

  • 失敗した接続に対する自動再試行メカニズム

  • すべてのパラメータの入力検証

パフォーマンス

  • 最適なリソース使用のための接続プール

  • クエリ実行時間のログ記録

  • 接続プールの統計

  • パフォーマンスメトリックの収集

監視

  • 異なるログレベルによる構造化ログ

  • クエリ実行の追跡

  • 接続状態の監視

  • エラー率の追跡

貢献

  1. リポジトリをフォークする

  2. 機能ブランチを作成します( git checkout -b feature/amazing-feature

  3. 変更をコミットします ( git commit -m 'Add some amazing feature' )

  4. ブランチにプッシュする ( git push origin feature/amazing-feature )

  5. プルリクエストを開く

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。

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/Medsaad/mcp-db-navigator'

If you have feedback or need assistance with the MCP directory API, please join our Discord server