Skip to main content
Glama
avelloal

Apache Hive MCP Server

by avelloal

Apache Hive Server Server

Apache Hive Server(HiveServer2)向けの MCP サーーです。 FastMCP で構築されて、オープンソースの Apache Hive、Cloudera CDP Base、Cloudera CDP Public Cloud(CDW)など、HiveServer2 互換の任意のエンドポイントに接続し、LLM エージェントが呼び出せる読取り専用のツールを2つ公開します。


Project summary

  • 概要 — LLM エージェントが Apache Hive をクエリするための Model Context Protocol サーです。テーブル一覧の表示と読取り専用 SQL の実执行ができ、結果は JSON で返されます。

  • 機能互換 — Cloudera の Impala/Iceberg MCP server を mirror しています。execute_queryget_schema のツールと構表は同ですが、接続レイヤーが impyla 経由の HiveServer2 に代わっています。

  • HiveServer2 が使える場所ならどこでも動作 — オープンソースの ApacheHive、CDPBase(Kerberos/LDAP)、CDP Public Cloud/CDW(Knox/LDAP/HTTPS)に対応。

  • デフォルトで安全execute_query は読取り専用プレフィクスガード(SELECT/SHOW/DESCRIBE/WITH)を適用ます。書き込み・DDL 文は接続を確立する前に拒否されます。

  • トランスポートMCP_TRANSPORTstdio(デフォルト)、httpsse を選択します。

  • 技術スタック — Python ≥3.10、FastMCPimpylauv。ユニットテストの数は11(接続はモック—実際の Hive は不要)。


Related MCP server: Cloudera Iceberg MCP Server

Tools

ツール

シグネチャ

説明

execute_query

execute_query(query: str) -> str

読み取り専用 SQLクエリ(SELECT、SHOW、DESCRIBE、WITH)を実行して、結果を列名をキーとするオブジェクトのJSON配列で返します。書き込み操作はエラー文字列で拒否されます。

get_schema

get_schema() -> str

設定されたデータベースに対して SHOW TABLES を実行し、テーブル一覧を文字列のJSON配列で返します。


設定

設定はすべて環境変数(またはプロジェクトルートの .env ファイル)で行います。

変数

デフォルト

説明

HIVE_HOST

localhost

HiveServer2 のホスト名または IP

HIVE_PORT

10000

HiveServer2 の Thrift ポート

HIVE_DATABASE

default

接続するデータベース

HIVE_USER

(空)

ユーザー名(NOSASL/Kerberos の場合は空のまま)

HIVE_PASSWORD

(空)

パスワード(PLAIN/LDAP で使用)

HIVE_AUTH_MECHANISM

PLAIN

認証方式: NOSASLPLAINLDAPGSSAPI

HIVE_USE_HTTP_TRANSPORT

false

バイナリの Thrift の代わりに HTTP トランスポートを使用

HIVE_HTTP_PATH

cliservice

HIVE_USE_HTTP_TRANSPORT=true の場合の HTTP パス

HIVE_USE_SSL

false

Thrift 接続で TLS を有効にする

HIVE_KERBEROS_SERVICE_NAME

hive

Kerberos サービスのプリンシパル名(GSSAPI のみ)

MCP_TRANSPORT

stdio

MCP トランスポート: stdiohttpsse

.env.example.env にコピーして、値を設定してください。


Deployment presets

Local / development (Docker HiveServer2)

HIVE_HOST=localhost
HIVE_PORT=10000
HIVE_DATABASE=default
HIVE_AUTH_MECHANISM=NOSASL
MCP_TRANSPORT=stdio

CDP Public Cloud (CDW Virtual Warehouse)

HIVE_HOST=<coordinator-hostname>.dw.cloudera.site
HIVE_PORT=443
HIVE_DATABASE=default
HIVE_USER=<workload-username>
HIVE_PASSWORD=<workload-password>
HIVE_AUTH_MECHANISM=LDAP
HIVE_USE_HTTP_TRANSPORT=true
HIVE_HTTP_PATH=cliservice
HIVE_USE_SSL=true
MCP_TRANSPORT=stdio

CDP Base / on-premises with Kerberos

HIVE_HOST=<hiveserver2-host.example.com>
HIVE_PORT=10000
HIVE_DATABASE=default
HIVE_AUTH_MECHANISM=GSSAPI
HIVE_KERBEROS_SERVICE_NAME=hive
MCP_TRANSPORT=stdio

サーバーを起動する前に Kerberos チケット (kinit) を取得してください。


Running

# Install
pip install -e .
# or with uv:
uv sync

# Copy and edit config
cp .env.example .env

# Start (stdio transport, for use with an MCP host)
uv run hive-mcp-server

MCP client configuration

MCP ホスト(Claude Desktop、Cloudera AI Agent Studio など)は、mcpServers JSON ブロックでサーバーを登録します。uvx はこのサーバーを GitHub から直接実行するため、ローカルインストールや PyPI への公開は不要です。ご利用の環境に合わせて HIVE_* 値を入力してください(Configuration と上記の presets を参照)。

{
    "mcpServers": {
        "Hive": {
            "command": "uvx",
            "args": [
                "--from",
                "git+https://github.com/avelloal/hive-mcp-server@v0.1.0",
                "hive-mcp-server"
            ],
            "env": {
                "HIVE_HOST": "<coordinator-hostname>.dw.cloudera.site",
                "HIVE_PORT": "443",
                "HIVE_DATABASE": "default",
                "HIVE_USER": "<workload-username>",
                "HIVE_PASSWORD": "<workload-password>",
                "HIVE_AUTH_MECHANISM": "LDAP",
                "HIVE_USE_HTTP_TRANSPORT": "true",
                "HIVE_HTTP_PATH": "cliservice",
                "HIVE_USE_SSL": "true"
            }
        }
    }
}

上記の例は CDP Public Cloud / CDW 向けです。ローカルまたは Kerberos ターゲットの場合は、上記の presets を参考に env 値を差し替えてください。 @v0.1.0 は固定リリースを指定しています。外すと最新版を追従し、新しいバージョンに上げることもできます。

Cloudera AI Agent Studio の具体的な内容(登録手順、環境変数の取扱い、stdio/uvxの制限)は、examples/agent-studio/ を参照してください。


Smoke test

  1. ローカルの HiveServer2 を起動(例: Apache Hive Docker イメージ):

docker run -d -p 10000:10000 apache/hive:3.1.3
  1. 上記のローカル presets で .env を設定。

  2. サーバーを起動:

uv run hive-mcp-server
  1. 別のターミナルで fastmcp dev inspector を または任意のMCPクライアントを使って、両方のツールを呼び出してください。

    • get_schema()[] またはテーブル名の一覧が返るはずです。

    • execute_query("SHOW DATABASES") — データベース一覧の JSON 配列が返るはずです。


License

Apache License 2.0 — LICENSE を参照してください。# Apache Hive MCP Server

Apache Hive(HiveServer2)向けの MCP サーバーです。FastMCP で構築されており、オープンソースの Apache Hive、Cloudera CDP Base、Cloudera CDP Public Cloud(CDW)など、HiveServer2 互換の任意のエンドポイントに接続できます。LLM エージェントが呼び出せる読み取り専用ツールを2つ公開します。


Project summary

  • 概要 — LLM エージェントが Apache Hive に対してテーブル一覧の取得や読み取り専用 SQL を実行できるようにする Model Context Protocol サーバーです。結果は JSON で返されます。

  • 機能互換性 — Cloudera の Impala/Iceberg MCP server をミラーしています。execute_queryget_schema のツールと構造は同じで、接続レイヤーが impyla 経由の HiveServer2 に置き換えられています。

  • HiveServer2 が動作場所で動作 — オープンソースの Apache Hive、CDP Base(Kerberos/LDAP)、CDP Public Cloud/CDW(Knox、LDAP over HTTPS)に対応。認証、tランスポート、TLS はすべて HIVE_* 環境変数で制御されます。

  • デフォルトで安全execute_query は読み取り専用プレフィクスガード(SELECT/SHOW/DESCRIBE/WITH)を適用します。書き込み・DLL 文はコネクションを開く前に拒否されます。

  • TransportMCP_TRANSPORT で選択する stdio(デフォルト)、httpsse のいずれか。

  • 技術スタック — Python ≥3.10、FastMCPimpylauv。11件のユニットテスト(接続はモック—実 Hive は不要)。

Tools

Tool

Signature

Description

execute_query

execute_query(query: str) -> str

(SELECT, SHOW, DESCRIBE, WITH) を実执行し、結果を colunmn-keyed オブジェクト配列 JSON として返す。書き込み操作はエラー文字列で拒否される。

get_schema

get_schema() -> str

設定されたデータベースに対してSHOW TABLESを実执行し、テーブル一覧を文字列のJSON配列で返します。


Configulation

設定はすべて環境変数(またはプロジェクトルートの .env ファイル)で行います。

Variable

Default

Description

HIVE_HOST

localhost

HiveServer2 のホスト名 IP

HIVE_PORT

10000

HiveServer2 の Thrift ポート

HIVE_DATABASE

default

接続先データベース

HIVE_USER

(空)

ユーザ名 (NOSASL Kerberos の場合空)

HIVE_PASSword

(空)

パスワード (PLAIN/LDAP で使用)

HIVE_AUTH_MECHANISM

PLAIN

認証方式: NOSASL,PLAIN,LDAP,GSSAPI

HIVE_USE_HTTP_Transpor

false

バイナリ thrift の代わりに HTTP トランスポートを使用

HIVE_HTTP_PATH

cliservice

HIVE_USE_HTTP_TRANSPORT=true の場合の同HTTP パス

HIVE_USE_SSL

false

thrift 接続の TLS を有効化する

HIVE_KERBEROS_SERVICE_NOM

hive

Kerberos サービス principal name(GSSAPI only)

MCP_TRANSPORT

stdio

MCP transport: stdio, http, or sse

Copy .env.example to .env and fill in your values.


Deployment presets

Local / development (Docker HiveServer2)

HIVE_HOST=localhost
HIVE_PORT=10000
HIVE_DATABASE=default
HIVE_AUTH_MECHANISM=NOSASL
MCP_TRANSPORT=stdio

CDP Public Cloud (CDW Virtual Warehouse)

HIVE_HOST=<coordinator-hostname>.dw.cloudera.site
HIVE_PORT=443
HIVE_DATABASE=default
HIVE_USER=<workload-username>
HIVE_PASSWORD=<workload-password>
HIVE_AUTH_MECHANISM=LDAP
HIVE_USE_HTTP_TRANSPORT=true
HIVE_HTTP_PATH=cliservice
HIVE_USE_SSL=true
MCP_TRANSPORT=stdio

CDP Base / on-premises with Kerberos

HIVE_HOST=<hiveserver2-host.example.com>
HIVE_PORT=10000
HIVE_DATABASE=default
HIVE_AUTH_MECHANISM=GSSAPI
HIVE_KERBEROS_SERVICE_NAME=hive
MCP_TRANSPORT=stdio

サーバーを起動する前(Kerberos のチケット渡(kinit.


Running

# Install
pip install -e .
# or with uv:
uv sync

# Copy and edit config
cp .env.example .env

# Start (stdio transport, for use with an MCP host)
uv run hive-mcp-server

MCP クライアント設定

MCP ホス(Claude Desktop、Cloudera AI Agent Studio, etc.)サーバーを mcpServers JSON ブブロックで登録します。uvx はこのサーバーを GitHub から直接実行できます。ローカルインストールや PyPI 公開は不要です。環境に合わせて HIVE_* の値を住めてください(設定 と上記のプリセットを参照)。

{
    "mcpServers": {
        "Hive": {
            "command": "uvx",
            "args": [
                "--from",
                "git+https://github.com/avelloal/hive-mcp-server@v0.1.0",
                "hive-mcp-server"
            ],
            "env": {
                "HIVE_HOST": "<coordinator-hostname>.dw.cloudera.site",
                "HIVE_PORT": "443",
                "HIVE_DATABASE": "default",
                "HIVE_USER": "<workload-username>",
                "HIVE_PASSWORD": "<workload-password>",
                "HIVE_AUTH_MECHANISM": "LDAP",
                "HIVE_USE_HTTP_TRANSPORT": "true",
                "HIVE_HTTP_PATH": "cliservice",
                "HIVE_USE_SSL": "true"
            }
        }
    }
}

上記の例は CDP Public Cloud / CDW 向けです。ローカルまたは Kerberos ターゲットでは、上記のプリセット を参照して env 値を差し替えてください。 @v0.1.0 は固定リーすを指定します。外すと最新版を追従し、新しバージョンに上げられます。

Cloudera AI ng Agent Studio 固有の手順(登録手順、環境変数処理、stdio/uvx 制限)は、examples/agent-studio/ を参照。


Smoke test

  1. ローカル HiveServer2 を起動(例: Apache Hive Docker イメージ):

    docker run -d -p 10000:10000 apache/hive:3.1.3
  2. 上記のローカルプリセットで .env を設定します。

  3. サーバーを起動:

    uv run hive-mcp-server
  4. 別のターミナルで fastmcp デB inspector または任意 MCP クライアントを使って両ツールを呼び出します:

    • get_schema()[] またはテーブル名の一覧が返るはずです。

    • execute_query("SHOW DATABASES") — データベース一覧の JSON 配列が返るはずです。


License

Apache License 2.0 — LICENSE を参してください。# Apache Hive MCP Server

Apache Hive(HiveServer2)向けの MCP サーバーです。FastMCP で構築されており、オープンソースの Apache Hive、Cloudera CDP Base、Cloudera CDP Public Cloud(CDW)など、HiveServer2 互換の任意のエンドポイントに接続できます。LLM エージェントが呼び出せる読み取り専用ツールを2つ公開します。


Project summary

  • 概要 — LLM エージェントが Apache Hive に対してテーブル一覧の取得や読み取り専用 SQL を実行できるようにする Model Context Protocol サーバーです。結果は JSON で返されます。

  • 機能互換性 — Cloudera の Impala/Iceberg MCP server をミラーしています。execute_queryget_schema のツールと構造は同じで、接続レイヤーが impyla 経由の HiveServer2 に置き換えられています。

  • HiveServer2 が動作する環境ならどこでも動作 — オープンソースの Apache Hive、CDP Base(Kerberos/LDAP)、CDP Public Cloud / CDW(Knox、LDAP over HTTPS)に対応しています。認証、トランスポート、TLS はすべて HIVE_* 環境変数で制御されます。

  • デフォルトで安全execute_query は読み取り専用プレフィクスガード(SELECT/SHOW/DESCRIBE/WITH)を適用します。書き込み・DLL 文はコネクションを開く前に拒否されます。

  • TransportMCP_TRANSPORT で選択する stdio(デフォルト)、httpsse

  • 技術スタック — Python ≥3.10、FastMCPimpylauv。ユニットテストは11件(接続はモック — 実 Live Hive は不要)。


Tools

ツール

シグネチャ

説明

execute_query

execute_query(query: str) -> str

読み取り専用 SQL クエリ(SELECT の、SHOW、DESCRIBE、WITH)を実执行し、結果をカラムキー付オブジェクトの JSON array で返します。書込み操作はエラー文字列で拒否されます。

get_schema

get_schema() -> str

設定したデータベースに対して SHOW TABLES を実执行し、テーブルーの一覧を文字列の JSON 配列で返します。


Configuration

設定はすべて環境変数(または、プロジェクトルートの .env ファイル)で行います。

変数

デフォルト

説明

HIVE_HOST

localhost

HiveServer2 のホスト名または IP

HIVE_PORT

10000

HiveServer2 の Thrift ポ rt

HIVE_DATABASE

default

接続先のデータベース

HIVE_USER

(空)

ユーザー名(NOSASL/ Kerberos の場合は空のまま)

IVE_PASSWord

(空)

パスワード(PLAIN/LDAP で使)

HIVE_AUTH_MECHANISM

PLAIN

認証方式: NOSASL,PLAIN,LDAP,GSSAPI

IVE_USE_HTTP_Transport

false

バイナリ thriift の代わりにHTTP transportを使用する

HIVE_HTTP_PATH

cliservice

HIVE_USE_HTTP_TRANSPORT=true の場合のHTTPパス

HIVE_USE_SSL

false

threift 接続の TLS を有効にする

HIVE_KERBEROS_SERVICE_NAME

hive

Kerberos サービスの principal 名(GSSAPI のみ)

MCP_TRANSPORT

stdio

MCP トランスポート: stdio, http (or sse

.env.example.env にコピーして値を記入してください。


デプロイメントプリセット

ローカル / 開発(Docker HiveServer2)

HIVE_HOST=localhost
HIVE_PORT=10000
HIVE_DATABASE=default
HIVE_AUTH_MECHANISM=NOSASL
MCP_TRANSPORT=stdio

CDP Public Cloud(CDW Virtual Warehouse)

HIVE_HOST=<coordinator-hostname>.dw.cloudera.site
HIVE_PORT=443
HIVE_DATABASE=default
HIVE_USER=<workload-username>
HIVE_PASSWORD=<workload-password>
HIVE_AUTH_MECHANISM=LDAP
HIVE_USE_HTTP_TRANSPORT=true
HIVE_HTTP_PATH=cliservice
HIVE_USE_SSL=true
MCP_TRANSPORT=stdio

CDP Base / オンプレミス(Kerberos)

HIVE_HOST=<hiveserver2-host.example.com>
HIVE_PORT=10000
HIVE_DATABASE=default
HIVE_AUTH_MECHANISM=GSSAPI
HIVE_KERBEROS_SERVICE_NAME=hive
MCP_TRANSPORT=stdio

サーバーを起動する前には Kerberos チケット(kinit)を取得しておいてください。


実行

# Install
pip install -e .
# or with uv:
uv sync

# Copy and edit config
cp .env.example .env

# Start (stdio transport, for use with an MCP host)
uv run hive-mcp-server

MCP クライアント設定

MCP ホスト(Claude Desktop、CAStudio など)は mcpServers JSON ブブロックでサーバーを登録します。uvx はこのサーバーを GitHub から直接実行できます。ローカルインストールや PyPI 公開は不要です。環境に合わせて HIVE_* 値を記入してください(設定 と上記のプリセットを参照)。

{
    "mcpServers": {
        "Hive": {
            "command": "uvx",
            "args": [
                "--from",
                "git+https://github.com/avelloal/hive-mcp-server@v0.1.0",
                "hive-mcp-server"
            ],
            "env": {
                "HIVE_HOST": "<coordinator-hostname>.dw.cloudera.site",
                "HIVE_PORT": "443",
                "HIVE_DATABASE": "default",
                "HIVE_USER": "<workload-username>",
                "HIVE_PASSWORD": "<workload-password>",
                "HIVE_AUTH_MECHANISM": "LDAP",
                "HIVE_USE_HTTP_TRANSPORT": "true",
                "HIVE_HTTP_PATH": "cliservice",
                "HIVE_USE_SSL": "true"
            }
        }
    }
}

上記の例は CDP Public Cloud / CDW 向けです。ローカルや Kerberos の場合は、上記のプリセット を参照社 env の値を差し替ええてください。@v0.1.0 で固定リリースを指します。外れせば最新版を追従し、バージョンを上て新しいバージョンにできます。

Cloudera AI Agent Studio 固有の手続き(登録手順、env-var の取り扱い、stdio/uvx の制限)は、examples/agent-studio/ を参照してください。


Smoke test

  1. ローカルの HiveServer2 を起動(例: Apach Hive Docker イメージ):

    docker run -d -p 10000:10000 apache/hive:3.1.3
  2. 上記のローカルプリセットで .env を設定。

  3. サーバーを起動:

    uv run hive-mcp-server
  4. 二番目のターミナルで fastmcp デブ・インスペクターまたは任意の MCP クライアントを使っつ、両方の tool を呼び出してください:

    • get_schema()[] またはテーブル名の一覧を返すはず。

    • execute_query("SHOW DATABASES") — データベースの JSON 配列を返すはず。


ライセンス

Apache License 2.0 — LICENSE を参照してください。

Install Server
F
license - not found
A
quality
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables read-only access to Apache Iceberg tables via Impala, allowing LLMs to inspect database schemas and execute SQL queries to retrieve data from Iceberg tables.
    2
    13
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to interact with Hadoop Hue for executing SQL queries using Hive, SparkSQL, or Impala and managing HDFS files. It supports directory browsing, file transfers, and exporting query results to CSV through the Model Context Protocol.
    8
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to query and explore schemas in Microsoft Fabric lakehouses, warehouses, and SQL databases using natural language, with tools for executing read-only SQL queries and searching tables, columns, and query patterns.
    3
    MIT

View all related MCP servers

Related MCP Connectors

  • Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…

  • Gateway between LLM agents and world data through eight tools and a bundled endpoint catalog.

  • Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/avelloal/hive-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server