Cloudera Iceberg MCP Server (via Impala) について
Cloudera Iceberg MCP Server (via Impala)は、Apache Impala経由でIcebergテーブルへの読み取り専用アクセスを提供します。スキーマの確認やクエリ実行に利用でき、stdio、HTTP、SSEの各トランスポートを設定できます。
主な機能
- 01現在のデータベースのテーブル一覧
- 02Impala経由のSQLクエリ実行
- 03クエリ結果のJSON出力
- 04stdio、HTTP、SSEトランスポート対応
活用シーン
- 01Icebergテーブルのスキーマ確認
- 02Icebergテーブルへの読み取り専用クエリ実行
MCP 対応
MCPクライアントに`get_schema()`と`execute_query(query: str)`を公開し、テーブル一覧の取得やクエリ実行を可能にします。stdio、HTTP、SSEトランスポートに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Cloudera Iceberg MCP サーバー(Impala 経由)
これは、Apache Impala 経由で Iceberg テーブルへの読み取り専用アクセスを提供する Model Context Protocol サーバーです。このサーバーを使用すると、LLM はデータベーススキーマを確認し、読み取り専用クエリを実行できます。
execute_query(query: str): Impala で任意の SQL クエリを実行し、結果を JSON として返します。get_schema(): 現在のデータベースで利用可能なすべてのテーブルを一覧表示します。
Claude Desktop での使用方法
このサーバーを Claude Desktop アプリで使用するには、claude_desktop_config.json の「mcpServers」セクションに次の設定を追加します。
オプション 1:GitHub から直接インストール(推奨)
{
"mcpServers": {
"iceberg-mcp-server": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/cloudera/iceberg-mcp-server@main",
"run-server"
],
"env": {
"IMPALA_HOST": "coordinator-default-impala.example.com",
"IMPALA_PORT": "443",
"IMPALA_USER": "username",
"IMPALA_PASSWORD": "password",
"IMPALA_DATABASE": "default"
}
}
}
}
オプション 2:ローカルにインストール(リポジトリをクローンした後)
{
"mcpServers": {
"iceberg-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/iceberg-mcp-server",
"run",
"src/iceberg_mcp_server/server.py"
],
"env": {
"IMPALA_HOST": "coordinator-default-impala.example.com",
"IMPALA_PORT": "443",
"IMPALA_USER": "username",
"IMPALA_PASSWORD": "password",
"IMPALA_DATABASE": "default"
}
}
}
}
オプション 2 では、/path/to をこのリポジトリへのパスに置き換えてください。Impala の設定に合わせて環境変数を設定してください。
AI フレームワークでの使用方法
./examples フォルダーには、LangChain/LangGraph や OpenAI SDK など、一般的な AI フレームワークにこの MCP サーバーを統合する例がいくつか含まれています。
トランスポート
MCP サーバーのトランスポートプロトコルは、MCP_TRANSPORT 環境変数で設定できます。使用できる値は次のとおりです。
stdio(デフォルト) — 標準入出力を介して通信します。ローカルツール、コマンドラインスクリプト、Claude Desktop などのクライアントとの統合に適しています。http- HTTP サーバーを公開します。ウェブベースのデプロイ、マイクロサービス、ネットワーク経由での MCP の公開に適しています。sse— Server-Sent Events(SSE)トランスポートを使用します。SSE に依存する既存のウェブベースのデプロイに適しています。
Copyright (c) 2025 - Cloudera, Inc. All rights reserved.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。