Cloudera Iceberg MCP Server (via Impala)

Cloudera Iceberg MCP Server (via Impala)

site icon
2025.04.17 0
Python数据库访问只读查询数据库
Cloudera Iceberg MCP Server 是一个基于 Apache Impala 的模型上下文协议服务器,提供对 Iceberg 表的只读访问。该服务器使大型语言模型(LLMs)能够检查数据库模式并执行只读查询。
View on GitHub

Overview

基本能力

产品定位

Cloudera Iceberg MCP Server 是一个数据库访问工具,专门为 Iceberg 表提供只读访问服务。

核心功能

  • execute_query(query: str): 在 Impala 上运行任何 SQL 查询,并将结果以 JSON 格式返回。
  • get_schema(): 列出当前数据库中所有可用的表。

适用场景

  • 大型语言模型(LLMs)需要访问数据库模式和执行只读查询的场景。
  • 与 AI 框架(如 LangChain/LangGraph、OpenAI SDK)集成的场景。

工具列表

  • execute_query: 执行 SQL 查询并返回结果。
  • get_schema: 获取数据库模式信息。

常见问题解答

  • 如何配置环境变量? 在 claude_desktop_config.json 中设置 IMPALA_HOST, IMPALA_PORT, IMPALA_USER, IMPALA_PASSWORD, IMPALA_DATABASE 等环境变量。

使用教程

使用依赖

  • 需要安装 Apache Impala 并配置好相关环境变量。

安装教程

  1. 克隆或下载 iceberg-mcp-server 仓库。
  2. 修改 claude_desktop_config.json 文件,添加以下配置:
{
  "mcpServers": {
    "iceberg-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/iceberg-mcp-server",
        "run",
        "server.py"
      ],
      "env": {
        "IMPALA_HOST": "coordinator-default-impala.example.com",
        "IMPALA_PORT": "443",
        "IMPALA_USER": "username",
        "IMPALA_PASSWORD": "password",
        "IMPALA_DATABASE": "default"
      }
    }
  }
}
  1. 替换 /path/to 为仓库的实际路径,并设置正确的环境变量。

调试方式

  1. 启动服务器后,可以通过调用 execute_queryget_schema 方法来测试功能是否正常。
  2. 检查日志以确认服务器是否正常运行。

许可证

该项目遵循 Apache-2.0 开源许可条款,请参阅 Apache-2.0 了解完整条款。