一个支持Apache Iceberg目录的MCP服务器,具有异步和日志功能。
| 目录类型 | 支持情况 |
|---|---|
| Rest 目录 | ✅ |
| AWS Glue | ✅ |
| Hive 元存储 | ❌ |
| S3 表 | ❌ |
| 工具 | 描述 |
|---|---|
namespaces | 获取 Iceberg 目录中的所有命名空间 |
tables | 获取给定命名空间下的所有表 |
table_schema | 返回给定表的模式 |
table_properties | 返回给定表的属性 |
从发布页面下载最新预构建的二进制文件。
要手动构建项目,请确保已安装Rust,然后运行:
cargo build --release
编译后的二进制文件位于:./target/release/iceberg-mcp
要将 Iceberg MCP 集成到 Claude Desktop 中:
设置 > 开发者 > 编辑配置。claude_desktop_config.json 文件以包含适当的配置:{
"mcpServers": {
"iceberg-mcp": {
"command": "PATH-TO-BINARY/iceberg-mcp",
"env": {
"CATALOG_KIND": "rest",
"REST_URI": "http://localhost:8080",
"LOG_LEVEL": "info"
}
}
}
}
// 使用 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 服务端点,可选
"LOG_LEVEL": "info"
}
}
}
}
// 或者使用 ACCESS_KEY 和 SECRET_KEY
{
"mcpServers": {
"ice-berg-mcp": {
"command": "PATH-TO-BINARY/iceberg-mcp",
"env": {
"CATALOG_KIND": "glue",
"GLUE_WAREHOUSE": "s3a://{bucket_name}",
"GLUE_ENDPOINT": "http://localhost:9000", // 可选
"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"
}
}
}
}
查看日志进行故障排除:
tail -n 20 -F ~/Library/Logs/Claude/mcp-server-iceberg-mcp.log