マルチデータベース MCP サーバー (Legion AI 製)
Model Context Protocol (MCP) Python SDK を統合した Legion Query Runner を使用して、データベース内のデータにアクセスし、クエリを実行できるようにするサーバーです。
ここから世代を始める
このツールはLegion AIによって提供されています。本格的なAIデータ分析ツールをご利用いただくには、サイトをご覧ください。サポートをご希望のデータベースがございましたら、メールでお問い合わせください。
ここで世代を終わらせる
データベースMCPを選ぶ理由
データベース MCP は、いくつかの説得力のある理由により、他のデータベース アクセス ソリューションよりも優れています。
統合マルチデータベース インターフェース: 単一の一貫した API を介して PostgreSQL、MySQL、SQL Server などのデータベースに接続します。データベースの種類ごとに異なるクライアント ライブラリを学習する必要はありません。
AI 対応統合: モデル コンテキスト プロトコル (MCP) を介した AI アシスタントのインタラクション用に特別に構築されており、自然言語データベース操作を可能にします。
ゼロ構成スキーマ検出: 手動での構成やマッピングなしで、データベース スキーマを自動的に検出して公開します。
データベースに依存しないツール: 基盤となるデータベース テクノロジに関係なく、同じツール セットを使用してテーブルを検索し、スキーマを探索し、クエリを実行します。
安全な資格情報管理: 資格情報をアプリケーション コードから分離し、データベース認証の詳細を安全に処理します。
シンプルな導入: 最小限のセットアップで、LangChain、FastAPI などの最新の AI 開発環境で動作します。
拡張可能な設計: カスタム ツールとプロンプトを簡単に追加して、特定のユース ケースの機能を強化できます。
データベース アクセスを必要とする AI エージェントを構築する場合でも、複数のデータベースへの統合されたインターフェイスだけが必要な場合でも、Database MCP は開発時間と複雑さを大幅に削減する合理化されたソリューションを提供します。
Related MCP server: MySQL MCP Server
特徴
マルチデータベースのサポート - 複数のデータベースに同時に接続
Legion Query Runner 経由のデータベースアクセス
AIアシスタント向けモデルコンテキストプロトコル(MCP)のサポート
データベース操作を MCP リソース、ツール、プロンプトとして公開する
複数の展開オプション(スタンドアロン MCP サーバー、FastAPI 統合)
クエリの実行と結果の処理
環境変数、コマンドライン引数、またはMCP設定JSONによる柔軟な構成
複数データベース設定のためのユーザー主導のデータベース選択
サポートされているデータベース
データベース | DB_TYPEコード |
PostgreSQL | ページ |
赤方偏移 | 赤方偏移 |
コックローチDB | ゴキブリ |
MySQL | MySQL |
RDS MySQL | rds_mysql |
マイクロソフトSQLサーバー | mssql |
ビッグクエリ | ビッグクエリ |
オラクルDB | オラクル |
SQLite | sqlite |
コネクタとしてLegion Query Runnerライブラリを使用しています。詳細はAPIドキュメントをご覧ください。
MCPとは何ですか?
モデルコンテキストプロトコル(MCP)は、AIアプリケーションにおけるコンテキストを維持するための仕様です。このサーバーは、 MCP Python SDKを使用して以下の機能を実現します。
データベース操作をAIアシスタントのツールとして公開する
データベーススキーマとメタデータをリソースとして提供する
データベース操作に役立つプロンプトを生成する
データベースとのステートフルなインタラクションを可能にする
インストールと設定
必須パラメータ
単一データベース構成の場合:
DB_TYPE : データベースタイプコード(上記の表を参照)
DB_CONFIG : データベース接続用のJSON構成文字列
マルチデータベース構成の場合:
DB_CONFIGS : データベース構成の JSON 配列。それぞれに次の内容が含まれます。
db_type : データベースタイプコード
構成: データベース接続構成
説明: 人間が読めるデータベースの説明
設定形式はデータベースの種類によって異なります。データベース固有の設定の詳細については、 APIドキュメントを参照してください。
インストール方法
オプション1: UVを使用する(推奨)
uvを使用する場合、特別なインストールは必要ありません。 uvxを使用してdatabase-mcpを直接実行します。
UV 構成例 (単一データベース):
UV 構成の例 (複数のデータベース):
オプション2: PIPを使用する
pip 経由でインストール:
PIP 構成例 (単一データベース):
サーバーの実行
生産モード
設定方法
環境変数(単一データベース)
環境変数(複数のデータベース)
ID を指定しない場合は、データベースの種類と説明に基づいてシステムが自動的に ID を生成します。
コマンドライン引数(単一データベース)
コマンドライン引数(複数のデータベース)
idフィールドを使用して各データベースにカスタム ID を指定することも、データベースの種類と説明に基づいてシステムに ID を生成させることもできます。
マルチデータベースサポート
複数のデータベースに接続する場合は、クエリごとに使用するデータベースを指定する必要があります。
list_databasesツールを使用して、利用可能なデータベースとそのIDを確認します。get_database_infoを使用してデータベースのスキーマの詳細を表示します。find_tableを使用して、すべてのデータベースからテーブルを検索します。execute_query、get_table_columnsなどのツールにdb_idパラメータを提供します。
データベース接続は、 DbConfigオブジェクトのディクショナリとして内部的に管理され、各データベースには一意の ID が付与されます。スキーマ情報はテーブルオブジェクトのリストとして表され、各テーブルには名前と列情報が含まれます。
select_databaseプロンプトは、データベースの選択プロセスをユーザーに案内します。
スキーマ表現
データベース スキーマはテーブル オブジェクトのリストとして表され、各テーブルにはその列に関する情報が含まれています。
この表現により、明確な階層構造を維持しながら、プログラムでテーブルや列の情報に簡単にアクセスできるようになります。
公開されたMCP機能
リソース
リソース | 説明 |
| 構成された1つまたはすべてのデータベースのスキーマを取得します |
ツール
道具 | 説明 |
| SQLクエリを実行し、結果をマークダウンテーブルとして返す |
| SQLクエリを実行し、結果をJSONとして返す |
| 特定のテーブルの列名を取得する |
| 特定のテーブルの列タイプを取得する |
| 最近のクエリ履歴を取得する |
| 利用可能なすべてのデータベース接続を一覧表示する |
| スキーマを含むデータベースの詳細情報を取得します |
| 特定のテーブルが含まれているデータベースを見つける |
| 列名や型を含むテーブルの詳細な説明を取得します |
| テーブルからデータのサンプルを取得する |
すべてのデータベース固有のツール ( execute_query 、 get_table_columnsなど) では、使用するデータベースを指定するためにdb_idパラメータが必要です。
プロンプト
プロンプト | 説明 |
| データベースに対してSQLクエリを作成する |
| SQLクエリが何をするのかを説明する |
| パフォーマンス向上のためにSQLクエリを最適化する |
| ユーザーが使用するデータベースを選択できるように支援する |
発達
MCPインスペクターの使用
これを実行してインスペクタを起動します
コマンド入力欄に次のように入力します
テスト
出版
ライセンス
このリポジトリはGPLライセンスです