Iceberg MCP

by morristai

34 192 downloads Not rated yet

About

Iceberg MCP is an MCP (Model Context Protocol) server for Apache Iceberg catalogs, providing async and logging support. It integrates with Rest and AWS Glue catalogs, and is intended for developers who want to query Iceberg metadata via MCP-compatible clients like Claude Desktop.

Explore

- Supports Rest and AWS Glue Iceberg catalogs
- Provides tools: namespaces, tables, table_schema, table_properties
- Built with async I/O and logging support
- Pre-built binaries available for download
- Compatible with MCP clients like Claude Desktop

Install by downloading the latest pre-built binary from the Releases page, or build from source using Rust (run cargo build --release). Configure the server via environment variables for the catalog type (CATALOG_KIND: rest or glue) and corresponding credentials. Integrate with Claude Desktop by updating claude_desktop_config.json with the binary path and required environment variables.

namespaces

Get all namespaces in the Iceberg catalog

tables

Get all tables for a given namespace

table_schema

Return the schema for a given table

table_properties

Return table properties for a given table

| Tools | Description |
|--------------------|------------------------------------------------|
| namespaces | Get all namespaces in the Iceberg catalog |
| tables | Get all tables for a given namespace |
| table_schema | Return the schema for a given table |
| table_properties | Return table properties for a given table |

An MCP server for Apache Iceberg catalogs with async and logging.

Iceberg MCP DEMO

Supported Catalogs

| Catalog Type | Supported |
|----------------|-----------|
| Rest Catalogs | ✅ |
| AWS Glue | ✅ |
| Hive Metastore | ❌ |
| S3 Table | ❌ |

Supported Tools

| Tools | Description |
|--------------------|------------------------------------------------|
| namespaces | Get all namespaces in the Iceberg catalog |
| tables | Get all tables for a given namespace |
| table_schema | Return the schema for a given table |
| table_properties | Return table properties for a given table |

Installation

Option 1: Download the Release Binary

Download the latest pre-built binary from the Releases page.

Option 2: Build from Source

To build the project manually, ensure you have Rust installed, then run:

cargo build --release

The compiled binary will be located at: ./target/release/iceberg-mcp

Client Configuration

Claude Desktop

To integrate Iceberg MCP with Claude Desktop:
1. Open Settings > Developer > Edit Config.
2. Update claude_desktop_config.json with the appropriate configuration:

- Rest Catalogs

{
  "mcpServers": {
    "iceberg-mcp": {
      "command": "PATH-TO-BINARY/iceberg-mcp",
      "env": {
        "CATALOG_KIND": "rest",
        "REST_URI": "http://localhost:8080",
        "LOG_LEVEL": "info"
      }
    }
  }
}

- AWS Glue Catalogs

// use PROFILE_NAME
{
  "mcpServers": {
    "iceberg-mcp": {
      "command": "PATH-TO-BINARY/iceberg-mcp",
      "env": {
        "CATALOG_KIND": "glue",
        "AWS_CONFIG_FILE": "/Users/{your_username}/.aws/config",
        "AWS_SHARED_CREDENTIALS_FILE": "/Users/{your_username}/.aws/credentials",
        "PROFILE_NAME": "default",
        "GLUE_WAREHOUSE": "s3://{bucket_name}",
        "GLUE_ENDPOINT": "http://localhost:9000", // Glue service endpoint, optional
        "LOG_LEVEL": "info"
      }
    }
  }
}

// or use ACCESS_KEY and SECRET_KEY
{
"mcpServers": {
"iceberg-mcp": {
"command": "PATH-TO-BINARY/iceberg-mcp",
"env": {
"CATALOG_KIND": "glue",
"GLUE_WAREHOUSE": "s3a://{bucket_name}",
"GLUE_ENDPOINT": "http://localhost:9000", // Optional
"AWS_ACCESS_KEY_ID": "my_access_id",
"AWS_SECRET_ACCESS_KEY": "my_secret_key",
"AWS_REGION_NAME": "us-east-1",
"S3_ENDPOINT": "http://localhost:9000",
"S3_ACCESS_KEY_ID": "admin",
"S3_SECRET_ACCESS_KEY": "password",
"S3_REGION": "us-east-1",
"LOG_LEVEL": "info"
}
}
}
}

Debugging

Claude Desktop

View logs for troubleshooting with:

tail -n 20 -F ~/Library/Logs/Claude/mcp-server-iceberg-mcp.log
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.

Videos about Iceberg MCP

Relevant YouTube tutorials, setups, and demos