mcp-bauplan について
mcp-bauplanは、Bauplanのテーブルを参照し、読み取り専用のSQLクエリを実行するMCPサーバーです。S3上のIcebergテーブルを扱うデータチーム向けです。
主な機能
- 01名前空間内のテーブル一覧
- 02テーブルスキーマの取得
- 03SELECTクエリの実行
- 04SSEとSTDIOのトランスポート
活用シーン
- 01分析前のテーブル確認
- 02テーブルスキーマの確認
- 03SQLによるBauplanデータの検索
MCP 対応
Bauplanのテーブル一覧、スキーマ参照、SELECTクエリ実行のツールをMCPクライアントに提供します。SSEとSTDIOに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-bauplan
データテーブルを操作し、Bauplan のクエリを実行する、ミニマリストな Model Context Protocol MCP サーバーです。
Bauplan は、S3 上で Iceberg テーブルのデータストアを管理します。
機能
- 設定された名前空間内の Bauplan データテーブルとそのスキーマを取得します
- SQL を使用して Bauplan データテーブルをクエリします(SELECT のみ)
SSE と STDIO の両方のトランスポートに対応しています。
ツール
このサーバーには、Bauplan データテーブルを操作するための以下のツールが実装されています。
list_tables:- 設定された名前空間内のすべてのテーブルを一覧表示します
get_schema:- データテーブルのスキーマを取得します
run_query:- 指定されたテーブルに対して SELECT クエリを実行します
設定
-
以下の場所にある Claude Desktop の設定ファイルを新規作成するか、編集します。
- macOS の場合:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows の場合:
%APPDATA%/Claude/claude_desktop_config.json
- macOS の場合:
-
以下を追加します。
{
"mcpServers": {
"mcp-bauplan": {
"command": "/path/to/uvx",
"args": ["mcp-bauplan"],
"env": {
"BAUPLAN_API_KEY": "your-api-key",
"BAUPLAN_BRANCH": "your-branch",
"BAUPLAN_NAMESPACE": "your-namespace",
// Optional
"BAUPLAN_TIMEOUT": "query-timeout-secs" // default 30 seconds
}
}
}
}
-
/path/to/uvxをuvx実行ファイルの絶対パスに置き換えます。ターミナルでwhich uvxコマンドを実行してパスを確認してください。これにより、サーバーの起動時に正しいバージョンのuvxが使用されます。 -
変更を適用するため、Claude Desktop を再起動します。
スタンドアロンの SSE サーバーを実行する
.env.example から .env ファイルを作成し、次のコマンドを実行します。
$ uvx --env-file /path/to/.env mcp-bauplan --transport sse --port 9090
uvxではなくnvxを使用すると、デフォルトのレジストリ https://pypi.org からmcp-bauplanが取得される点に注意してください。
今後の開発
開発中
- リソースとしての Bauplan(SDK と Platform)のドキュメント化
- Bauplan 実行の自動化 — コマンドの追加とパイプラインの実行
- クエリの生成
- テンプレートを使用したコード生成
- データガバナンスとコンプライアンス
- テストと検証
- 統合エコシステム
セットアップ
-
前提条件:
- Python 3.10 以降。
- Bauplan API キー(こちらからリクエスト)。
uvパッケージマネージャー(インストール)。
-
リポジトリのクローン:
git clone https://github.com/marcoeg/mcp-bauplan
cd mcp-nvd
-
環境変数の設定:
- プロジェクトのルートに
.envファイルを作成します。BAUPLAN_API_KEY=your-api-key BAUPLAN_BRANCH=your-branch BAUPLAN_NAMESPACE=your-namespace
- プロジェクトのルートに
-
依存関係のインストール:
uv sync
uv pip install -e .
MCP Inspector で実行する
cd /path/to/the/repo
source .env
CLIENT_PORT=8077 SERVER_PORT=8078 npx @modelcontextprotocol/inspector \
uv run mcp-bauplan
注:標準ポートが競合しない場合は、
CLIENT_PORT=8077 SERVER_PORT=8078を省略してください。
次にブラウザーを開き、MCP Inspector に表示された URL にアクセスします。通常は http://localhost:8077?proxyPort=8078 です。
Inspector では、トランスポートの種類を
stdioとsseの間で自由に切り替えられます。sseを使用するには、以下の説明に従ってサーバーを実行する必要があります。
SSE トランスポートでのテスト
サーバーを実行する:
cd /path/to/the/repo
source .env
uv run mcp-bauplan --transport sse --port 9090
- デフォルトでは、SSE トランスポートでポート
9090を使用して実行されます。
次にブラウザーを開き、MCP Inspector に表示された URL にアクセスします。SSE トランスポートタイプを選択してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。