mcpField
D
Database Mcp

Database Mcp

ローカル
github.com/xavieryang007データベース478 週間前に更新

Database Mcp について

Database MCPはGORMを介してデータベースに接続するGoサービスです。MySQL、PostgreSQL、SQLite、SQL Server、ClickHouseに対応し、YAML、コマンドライン引数、環境変数で設定できます。

主な機能

  1. 015種類のデータベースに接続
  2. 02YAML、コマンドライン、環境変数で設定
  3. 03データベースのテーブル一覧
  4. 04テーブルとカラムの詳細確認
  5. 05SQLクエリの実行

活用シーン

  1. 01MCPクライアントからテーブルやカラムを調査
  2. 02SQLを実行して結果または更新行数を取得

MCP 対応

MCPサーバーは`get_tables`、`get_table_detail`、`execute_sql`ツールをクライアントに提供します。文書に記載されたローカルSSE URLなど、設定したMCPエンドポイントから接続できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Database MCP Service

GORM を通じて複数のデータベースタイプをサポートする、データベース機能を備えた MCP(Metoro Control Protocol)サービスです。

機能

  • 複数のデータベースタイプをサポート:
    • MySQL
    • PostgreSQL
    • SQLite
    • SQL Server
    • ClickHouse
  • 以下を通じた設定:
    • 設定ファイル(YAML)
    • コマンドライン引数
    • 環境変数
  • MCP プロトコルとの統合
  • GORM ORM のサポート

インストール

  1. リポジトリをクローンします
  2. 依存関係をインストールします:
    go mod tidy
    

設定

設定ファイル(config.yaml)

以下の構成で config.yaml ファイルを作成します:

database:
  type: "mysql"  # mysql, postgres, sqlite, sqlserver, clickhouse
  host: "localhost"
  port: 3306
  username: "root"
  password: "password"
  database: "mydb"
  ssl_mode: "disable"  # for postgres
  file: "database.db"  # for sqlite
コマンドライン引数

コマンドライン引数を使用して、設定ファイルの設定を上書きできます:

./database-mcp --config=config.yaml \
  --db-type=mysql \
  --db-host=localhost \
  --db-port=3306 \
  --db-user=root \
  --db-pass=password \
  --db-name=mydb \
  --db-ssl-mode=disable \
  --db-file=database.db

使用可能なコマンドライン引数:

  • --config:設定ファイルへのパス(デフォルト:"config.yaml")
  • --db-type:データベースタイプ(mysql、postgres、sqlite、sqlserver、clickhouse)
  • --db-host:データベースホスト
  • --db-port:データベースポート
  • --db-user:データベースのユーザー名
  • --db-pass:データベースのパスワード
  • --db-name:データベース名
  • --db-ssl-mode:SSL モード(PostgreSQL 用)
  • --db-file:データベースファイル(SQLite 用)

使用方法

  1. サービスを起動します:

    ./database-mcp --db-type=mysql --db-host=127.0.0.1 --db-port=3306 --db-user=dbuser --db-pass=passwd --db-name=dbname --db-ssl-mode=disable --mode=http
    
  2. サービスは以下を実行します:

    • ファイルおよび/またはコマンドラインから設定を読み込みます
    • データベース接続を初期化します
    • MCP サーバーを起動します
    • 使用可能なツールとリソースを登録します

MCP の設定

MCP サービスを使用するには、MCP クライアントで MCP エンドポイントを設定します:

http://127.0.0.1:8080/sse

これにより、MCP クライアントはポート 8080 で実行されているローカルサービスに接続します。

MCP ツール

このサービスでは、以下の MCP ツールを提供します:

  1. get_tables:データベース内のすべてのテーブルを取得します
    • 名前とコメントを含むテーブルの一覧を返します
  2. get_table_detail:特定のテーブルの詳細情報を取得します
    • 引数:
      • table_name:詳細を取得するテーブルの名前
    • 以下を含むテーブル情報を返します:
      • テーブル名とコメント
      • カラム情報(名前、タイプ、コメント、NULL 許容、デフォルト値)
  3. execute_sql:SQL クエリを実行します
    • 引数:
      • query:実行する SQL クエリ
    • 戻り値:
      • SELECT クエリの場合:結果の配列
      • その他のクエリの場合:影響を受けた行数

ライセンス

MIT License

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。