Skip to main content
Glama
ahodroj

MCP Iceberg Catalog

by ahodroj

MCP 氷山カタログ

鍛冶屋のバッジ

Apache Icebergと連携するためのMCP(Model Context Protocol)サーバー実装。このサーバーは、ClaudeデスクトップからIcebergテーブルをクエリおよび管理するためのSQLインターフェースを提供します。

Claude Desktop を Iceberg Data Lake カタログとして

画像

Related MCP server: PostgreSQL Query MCP Server

Claude Desktopへのインストール方法

Smithery経由でインストール

Smithery経由で Claude Desktop 用の MCP Iceberg Catalog を自動的にインストールするには:

npx -y @smithery/cli install @ahodroj/mcp-iceberg-service --client claude
  1. 前提条件

    • Python 3.10以上

    • UV パッケージインストーラー(推奨)または pip

    • Iceberg RESTカタログとS3互換ストレージへのアクセス

  2. Claude Desktop にインストールする方法claude_desktop_config.jsonに次の構成を追加します。

{
  "mcpServers": {
    "iceberg": {
      "command": "uv",
      "args": [
        "--directory",
        "PATH_TO_/mcp-iceberg-service",
        "run",
        "mcp-server-iceberg"
      ],
      "env": {
        "ICEBERG_CATALOG_URI" : "http://localhost:8181",
        "ICEBERG_WAREHOUSE" : "YOUR ICEBERG WAREHOUSE NAME",
        "S3_ENDPOINT" : "OPTIONAL IF USING S3",
        "AWS_ACCESS_KEY_ID" : "YOUR S3 ACCESS KEY",
        "AWS_SECRET_ACCESS_KEY" : "YOUR S3 SECRET KEY"
      }
    }
  }
}

デザイン

建築

MCP サーバーは、次の 3 つの主要コンポーネントに基づいて構築されます。

  1. MCP プロトコル ハンドラー

    • クロードとの通信のためのモデルコンテキストプロトコルを実装します

    • stdio を通じてリクエスト/レスポンスのサイクルを処理します

    • サーバーのライフサイクルと初期化を管理します

  2. クエリプロセッサ

    • sqlparseを使用して SQL クエリを解析します

    • サポートされる操作:

      • リストテーブル

      • 表の説明

      • 選択

      • 入れる

  3. 氷山統合

    • テーブル操作にはpyiceberg使用する

    • PyArrowと統合して効率的なデータ処理を実現

    • カタログ接続とテーブル操作を管理します

PyIceberg 統合

サーバーは PyIceberg をいくつかの方法で利用します。

  1. カタログ管理

    • RESTカタログに接続する

    • テーブルメタデータを管理する

    • 名前空間の操作を処理する

  2. データ操作

    • PyIceberg型とPyArrow型間の変換

    • PyArrow テーブルを通じてデータ挿入を処理します

    • テーブルスキーマとフィールドタイプを管理します

  3. クエリ実行

    • SQLをPyIcebergの操作に変換する

    • データのスキャンとフィルタリングを処理

    • 結果セットの変換を管理する

さらなる実装が必要

  1. クエリ操作

    • [ ] UPDATE操作を実装する

    • [ ] DELETEサポートを追加

    • [ ] スキーマ定義付きのCREATE TABLEのサポート

    • [ ] ALTER TABLE操作を追加する

    • [ ] テーブルパーティションサポートを実装する

  2. データ型

    • [ ] 複合型(配列、マップ、構造体)のサポート

    • [ ] タイムゾーン処理付きのタイムスタンプを追加する

    • [ ] 小数点型のサポート

    • [ ] ネストされたフィールドのサポートを追加

  3. パフォーマンスの改善

    • [ ] バッチ挿入を実装する

    • [ ] クエリ最適化を追加する

    • [ ] 並列スキャンのサポート

    • [ ] 頻繁にアクセスされるデータにキャッシュ層を追加する

  4. セキュリティ機能

    • [ ] 認証メカニズムを追加する

    • [ ] ロールベースのアクセス制御を実装する

    • [ ] 行レベルのセキュリティを追加する

    • [ ] 暗号化された接続のサポート

  5. 監視と管理

    • [ ] メトリクスコレクションを追加する

    • [ ] クエリログの実装

    • [ ] パフォーマンス監視を追加する

    • [ ] テーブルメンテナンス操作のサポート

  6. エラー処理

    • [ ] エラーメッセージの改善

    • [ ] 一時的な障害に対する再試行メカニズムを追加する

    • [ ] トランザクションサポートを実装する

    • [ ] データ検証を追加する

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

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/ahodroj/mcp-iceberg-service'

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