Cloudera Iceberg MCP Server via Impala
Project description
Iceberg MCP Server - Setup Guide
Complete setup instructions for the Iceberg MCP Server with HTTP transport support.
Prerequisites
- Python 3.10+
- Access to Cloudera Data Platform with Impala
- Valid Cloudera credentials
- uv package manager (recommended) or pip
Install UV (if not already installed)
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# Or via pip
pip install uv
Installation
Step 1: Clone the Repository
git clone https://github.com/genai-works-org/cloudera-mcp
cd cloudera-mcp
Step 2: Install Dependencies
# Sync existing project dependencies
uv sync
# Install project in editable mode
uv pip install -e .
Configuration
Step 3: Create Environment Configuration
Create a .env file in the project root directory:
# Create .env file with your Cloudera credentials
cat > .env << EOF
# Cloudera Impala Configuration
IMPALA_HOST=your-coordinator-host.cloudera.site
IMPALA_PORT=443
IMPALA_USER=your-username
IMPALA_PASSWORD=your-password
IMPALA_DATABASE=default
IMPALA_AUTH_MECHANISM=LDAP
IMPALA_USE_HTTP_TRANSPORT=true
IMPALA_HTTP_PATH=cliservice
IMPALA_USE_SSL=true
EOF
Step 4: Update Configuration Values
Edit the .env file with your actual credentials:
For Cloudera Data Platform:
- IMPALA_HOST: Your Cloudera coordinator hostname
- IMPALA_USER: Your Cloudera username
- IMPALA_PASSWORD: Your Cloudera password
- IMPALA_AUTH_MECHANISM: Usually
LDAPfor CDP
Example from JDBC connection string:
jdbc:impala://coordinator-xyz123.dw-xyz123.cloudera.site:443/default;AuthMech=3;transportMode=http;httpPath=cliservice;ssl=1;UID=myuser;PWD=mypass
Converts to:
IMPALA_HOST=coordinator-xyz123.dw-xyz123.cloudera.site
IMPALA_PORT=443
IMPALA_USER=myuser
IMPALA_PASSWORD=mypass
IMPALA_AUTH_MECHANISM=LDAP
Verification
Step 6: Test Database Connection
# Test database connectivity
uv run python -c "
import os
from dotenv import load_dotenv
load_dotenv()
from cloudera_mcp.tools.impala_tools import get_db_connection
try:
conn = get_db_connection()
print('Database connection successful')
conn.close()
except Exception as e:
print(f'Database connection failed: {e}')
"
Step 7: Start the MCP Server
# Start the server
uv run python src/cloudera_mcp/server.py
Expected output:
Starting Iceberg MCP Server via Impala on port 8888
Server will be available at: http://localhost:8888/
INFO: Started server process [46517]
INFO: Waiting for application startup.
[07/09/25 01:23:53] INFO StreamableHTTP session manager started streamable_http_manager.py:112
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:8888 (Press CTRL+C to quit)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iflow_mcp_genai_works_org_cloudera_mcp-0.1.0.tar.gz.
File metadata
- Download URL: iflow_mcp_genai_works_org_cloudera_mcp-0.1.0.tar.gz
- Upload date:
- Size: 42.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e01918a803f20117576ffd8a4f66cec759d97c98db45998206118810cc1b97e7
|
|
| MD5 |
2b495a73b11e885eb0300f6074974989
|
|
| BLAKE2b-256 |
968e83396f91d675c1bd2238c968c376c92c026192a49ceaed36aa4be113350c
|
File details
Details for the file iflow_mcp_genai_works_org_cloudera_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: iflow_mcp_genai_works_org_cloudera_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6fc82cc32fdd2013bf936872e2c5ade747b32d663f1bf2795a11430179e3a674
|
|
| MD5 |
3e4ebab7e3bd06a3be9da5f912cb78e4
|
|
| BLAKE2b-256 |
9ac30815982688eb328925f73ebfa23c3b74d94f67d0bb9179cc260a44e073a3
|