Skip to main content
Glama
sazboxai

Metabase MCP Server

by sazboxai

メタベースMCPサーバー

AI アシスタントが Metabase データベースおよびアクションと対話できるようにするモデル制御プロトコル (MCP) サーバー。

![メタベースMCPサーバー]

概要

Metabase MCP サーバーは、AI アシスタントと Metabase の間にブリッジを提供し、AI モデルが次のことを実行できるようにします。

  • Metabase で構成されたデータベースの一覧と探索

  • データベースのスキーマ、テーブル、フィールドに関する詳細なメタデータを取得します

  • データベース内のテーブル間の関係を視覚化する

  • メタベースアクションの一覧表示と実行

  • 安全なAPIを介してメタベースデータに対する操作を実行する

このサーバーは、[モデル制御プロトコル (MCP)] 仕様を実装しており、MCP ツールをサポートする AI アシスタントと互換性があります。

Related MCP server: MCP Toolkit

特徴

  • データベース探索: すべてのデータベースを一覧表示し、そのスキーマを探索します

  • メタデータの取得: テーブル、フィールド、関係に関する詳細情報を取得します

  • 関係の視覚化: データベースの関係を視覚的に表現する

  • アクション管理: メタベースアクションの一覧表示、詳細の表示、実行

  • 安全なAPIキーの取り扱い:APIキーを暗号化して保存し、漏洩を防止します。

  • Web インターフェース: ユーザーフレンドリーな Web インターフェースを通じて機能をテストおよびデバッグします

  • Docker サポート: Docker と Docker Compose による簡単なデプロイ

前提条件

  • メタベースインスタンス(v0.46.0以上を推奨)

  • 適切な権限を持つメタベース API キー

  • Docker(コンテナ化されたデプロイメント用)

  • Python 3.10+ (ローカル開発用)

インストール

Dockerの使用(推奨)

  1. このリポジトリをクローンします:

    git clone https://github.com/yourusername/metabase-mcp.git cd metabase-mcp
  2. Docker コンテナをビルドして実行します。

    docker-compose up -d
  3. http://localhost:5001で設定インターフェースにアクセスします。

手動インストール

  1. このリポジトリをクローンします:

    git clone https://github.com/yourusername/metabase-mcp.git cd metabase-mcp
  2. 依存関係をインストールします:

    pip install -r requirements.txt
  3. 構成インターフェースを実行します。

    python -m src.server.web_interface
  4. http://localhost:5000で設定インターフェースにアクセスします。

構成

  1. ブラウザでウェブインターフェースを開きます

  2. メタベース URL を入力します (例: http://localhost:3000 )

  3. Metabase APIキーを入力してください

  4. 「設定を保存」をクリックして接続をテストします

メタベースAPIキーの取得

  1. メタベースインスタンスに管理者としてログインします

  2. 設定 > 管理者設定 > APIキーに移動します

  3. 適切な権限を持つ新しいAPIキーを作成する

  4. 生成されたキーをMCPサーバーで使用するためにコピーします

使用法

MCPサーバーの実行

設定後、MCP サーバーを実行できます。

# Using Docker docker run -p 5001:5000 metabase-mcp # Manually python -m src.server.mcp_server

利用可能なツール

MCP サーバーは、AI アシスタントに次のツールを提供します。

  1. list_databases : Metabase に設定されているすべてのデータベースを一覧表示します

  2. get_database_metadata : 特定のデータベースの詳細なメタデータを取得する

  3. db_overview : データベース内のすべてのテーブルの概要を取得します

  4. table_detail : 特定のテーブルに関する詳細情報を取得する

  5. visualize_database_relationships : データベースの関係を視覚的に表現する

  6. run_database_query : データベースに対してSQLクエリを実行する

  7. list_actions : Metabase で設定されているすべてのアクションを一覧表示します

  8. get_action_details : 特定のアクションに関する詳細情報を取得する

  9. execute_action : パラメータ付きでメタベースアクションを実行する

Webインターフェース経由のテストツール

Web インターフェースには、各ツールのテスト領域が用意されています。

  1. データベースの一覧表示: メタベースに設定されているすべてのデータベースを表示します

  2. データベースメタデータの取得: データベースの詳細なスキーマ情報を表示する

  3. DB概要: データベース内のすべてのテーブルの簡潔なリストを表示します

  4. テーブルの詳細: 特定のテーブルに関する詳細情報を表示します

  5. データベース関係の視覚化: テーブル関係の視覚的表現を生成する

  6. クエリの実行: データベースに対してSQLクエリを実行する

  7. アクションの一覧表示: メタベースで設定されたすべてのアクションを表示します

  8. アクションの詳細を取得: 特定のアクションに関する詳細情報を表示します

  9. アクション実行: パラメータ付きアクションの実行をテストする

セキュリティに関する考慮事項

  • APIキーは暗号化されて保存されます

  • ウェブインターフェースではAPIキーはプレーンテキストで表示されません

  • 安全なメタベース URL が設定されている場合、すべての API リクエストは HTTPS を使用します。

  • 実稼働環境では、サーバーは安全なプロキシの背後に配置する必要があります。

発達

プロジェクト構造

metabase-mcp/ ├── src/ │ ├── api/ # Metabase API client │ ├── config/ # Configuration management │ ├── server/ # MCP and web servers │ └── tools/ # Tool implementations ├── templates/ # Web interface templates ├── docker-compose.yml # Docker Compose configuration ├── Dockerfile # Docker build configuration ├── requirements.txt # Python dependencies └── README.md # Documentation

新しいツールの追加

新しいツールを追加するには:

  1. src/tools/にツール機能を実装する

  2. src/server/mcp_server.pyにツールを登録します。

  3. templates/config.htmlにテストインターフェースを追加する(オプション)

  4. src/server/web_interface.pyにルートを追加します(テストインターフェースを追加する場合)

トラブルシューティング

よくある問題

  • 接続に失敗しました: メタベース URL が正しくアクセス可能であることを確認してください

  • 認証エラー: APIキーに必要な権限があることを確認してください

  • Dockerネットワークの問題: Dockerを使用する場合は、適切なネットワーク構成を確認してください

ログ

詳細なエラー情報についてはログを確認してください。

# Docker logs docker logs metabase-mcp # Manual execution logs # Logs are printed to the console

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

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/sazboxai/MCP_MetaBase'

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