Iceberg
Iceberg MCP
An MCP server for Apache Iceberg catalogs with async and logging.
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:
- Open
Settings
>Developer
>Edit Config
. - 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
{
"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",
"WAREHOUSE": "s3://{bucket_name}/{namespace}/{table}",
"LOG_LEVEL": "info"
}
}
}
}
Debugging
Claude Desktop
View logs for troubleshooting with:
tail -n 20 -F ~/Library/Logs/Claude/mcp-server-iceberg-mcp.log