mcpField
I
Iceberg MCP

Iceberg MCP

Local
github.com/morristaiDatabases36Updated 49w ago

About Iceberg MCP

Iceberg MCP is an MCP server for Apache Iceberg catalogs, built with async processing and logging. It suits users who want MCP clients to inspect Iceberg metadata. It currently supports REST and AWS Glue catalogs.

Key features

  1. 01Async processing with logging
  2. 02Supports REST and AWS Glue catalogs
  3. 03Tools for namespaces, tables and table properties
  4. 04Configurable log level
  5. 05Prebuilt binary or build from source

Use cases

  1. 01Browsing Iceberg namespaces and tables from Claude Desktop
  2. 02Reviewing table schemas and properties for data analysis
  3. 03Troubleshooting catalog connections and server runs

MCP support

This is an MCP server that exposes four tools to MCP clients: namespaces, tables, table_schema and table_properties.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Iceberg MCP

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

Iceberg MCP DEMO

Supported Catalogs
Catalog TypeSupported
Rest Catalogs✅
AWS Glue✅
Hive Metastore❌
S3 Table❌
Supported Tools
ToolsDescription
namespacesGet all namespaces in the Iceberg catalog
tablesGet all tables for a given namespace
table_schemaReturn the schema for a given table
table_propertiesReturn 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

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.