mcpField
T
Timeplus MCP Server

Timeplus MCP Server

ローカル
github.com/jovezhongデータベース1266 週間前に更新

Timeplus MCP Server について

Timeplus MCP Serverは、Timeplusクラスター向けにSQL実行とデータ探索のツールを提供します。データベース、Kafkaトピック、Icebergデータを扱うユーザー向けで、クエリは既定で読み取り専用です。設定によりDDLとDMLも許可できます。

主な機能

  1. 01TimeplusでSQLクエリを実行
  2. 02データベースとテーブルを一覧表示
  3. 03Kafkaトピックの一覧とメッセージ確認
  4. 04KafkaメッセージをTimeplusストリームに保存
  5. 05Apache Icebergデータベースに接続
  6. 06SQL生成用プロンプトを提供

活用シーン

  1. 01Timeplusクラスター内のデータをクエリ
  2. 02Kafkaトピック内のメッセージを確認
  3. 03KafkaメッセージをTimeplusにストリーミング
  4. 04データアクセスのためIcebergデータベースに接続

MCP 対応

MCPクライアントに、SQL実行、データベースとテーブルの一覧表示、Kafkaトピック操作、Iceberg接続のツールとSQL生成用プロンプトを提供します。クエリは既定で読み取り専用で、TIMEPLUS_READ_ONLYの設定によりDDLとDMLを有効にできます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"timeplus": {
"command": "uvx",
"args": [
"mcp-timeplus"
],
"env": {
"TIMEPLUS_HOST": "<TIMEPLUS_HOST>",
"TIMEPLUS_PORT": "<TIMEPLUS_PORT>",
"TIMEPLUS_USER": "<TIMEPLUS_USER>",
"TIMEPLUS_PASSWORD": "<TIMEPLUS_PASSWORD>",
"TIMEPLUS_SECURE": "<TIMEPLUS_SECURE>",
"TIMEPLUS_VERIFY": "<TIMEPLUS_VERIFY>",
"TIMEPLUS_CONNECT_TIMEOUT": "<TIMEPLUS_CONNECT_TIMEOUT>",
"TIMEPLUS_SEND_RECEIVE_TIMEOUT": "<TIMEPLUS_SEND_RECEIVE_TIMEOUT>",
"TIMEPLUS_READ_ONLY": "<TIMEPLUS_READ_ONLY>",
"TIMEPLUS_KAFKA_CONFIG": "<TIMEPLUS_KAFKA_CONFIG>"
}
}
}
}
起動コマンドuvx mcp-timeplus
設定が必要な環境変数
TIMEPLUS_HOST
TIMEPLUS_PORT
TIMEPLUS_USER
TIMEPLUS_PASSWORDシークレット
TIMEPLUS_SECURE
TIMEPLUS_VERIFY
TIMEPLUS_CONNECT_TIMEOUT
TIMEPLUS_SEND_RECEIVE_TIMEOUT
TIMEPLUS_READ_ONLY
TIMEPLUS_KAFKA_CONFIG

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimcp-timeplus

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Timeplus MCP サーバー

PyPI - Version

Timeplus 用の MCP サーバーです。

mcp-timeplus MCP server

機能

プロンプト
  • generate_sql:Timeplus に SQL でクエリを実行する方法について、LLM に詳しい情報を提供します。
ツール
  • run_sql

    • Timeplus クラスターで SQL クエリを実行します。
    • 入力:sql(文字列):実行する SQL クエリです。
    • 安全性を確保するため、Timeplus のクエリはすべてデフォルトで readonly = 1 に設定して実行されます。DDL または DML クエリを実行する場合は、環境変数 TIMEPLUS_READ_ONLY を false に設定できます。
  • list_databases

    • Timeplus クラスターのすべてのデータベースを一覧表示します。
  • list_tables

    • データベース内のすべてのテーブルを一覧表示します。
    • 入力:database(文字列):データベース名です。
  • list_kafka_topics

    • Kafka クラスターのすべてのトピックを一覧表示します。
  • explore_kafka_topic

    • Kafka トピックのメッセージをいくつか表示します。
    • 入力:topic(文字列):トピック名です。message_count(整数):表示するメッセージ数です。デフォルトは 1 です。
  • create_kafka_stream

    • Kafka メッセージをローカルに保存するためのストリーミング ETL を Timeplus で設定します。
    • 入力:topic(文字列):トピック名です。
  • connect_to_apache_iceberg

    • Apache Iceberg に基づくデータベースに接続します。現在、この機能は Timeplus Enterprise でのみ利用可能で、Timeplus Proton でも利用できるようにする予定です。
    • 入力:iceberg_db(文字列):Iceberg データベース名です。aws_account_id(整数):AWS アカウント ID(12 桁)です。s3_bucket(文字列):S3 バケット名です。aws_region(文字列):AWS リージョンです。デフォルトは "us-west-2" です。is_s3_table_bucket(ブール値):S3 バケットが S3 テーブルバケットかどうかを指定します。デフォルトは False です。

設定

まず、uv 実行ファイルがインストールされていることを確認してください。インストールされていない場合は、こちらの手順に従ってインストールできます。

  1. 次の場所にある Claude Desktop の設定ファイルを開きます。

    • macOS の場合:~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows の場合:%APPDATA%/Claude/claude_desktop_config.json
  2. 次の内容を追加します。

{
  "mcpServers": {
    "mcp-timeplus": {
      "command": "uvx",
      "args": ["mcp-timeplus"],
      "env": {
        "TIMEPLUS_HOST": "<timeplus-host>",
        "TIMEPLUS_PORT": "<timeplus-port>",
        "TIMEPLUS_USER": "<timeplus-user>",
        "TIMEPLUS_PASSWORD": "<timeplus-password>",
        "TIMEPLUS_SECURE": "false",
        "TIMEPLUS_VERIFY": "true",
        "TIMEPLUS_CONNECT_TIMEOUT": "30",
        "TIMEPLUS_SEND_RECEIVE_TIMEOUT": "30",
        "TIMEPLUS_READ_ONLY": "false",
        "TIMEPLUS_KAFKA_CONFIG": "{\"bootstrap.servers\":\"a.aivencloud.com:28864\", \"sasl.mechanism\":\"SCRAM-SHA-256\",\"sasl.username\":\"avnadmin\", \"sasl.password\":\"thePassword\",\"security.protocol\":\"SASL_SSL\",\"enable.ssl.certificate.verification\":\"false\"}"
      }
    }
  }
}

環境変数を、ご自身の Timeplus サービスを指すように更新してください。

  1. Claude Desktop を再起動して変更を適用します。

5ire など、ほかの MCP クライアントでもこの MCP サーバーを試すことができます。

開発

  1. test-services ディレクトリで docker compose up -d を実行し、Timeplus Proton サーバーを起動します。curl https://install.timeplus.com/oss | sh でダウンロードしてから、./proton server で起動することもできます。

  2. リポジトリのルートにある .env ファイルに、次の変数を追加します。

TIMEPLUS_HOST=localhost
TIMEPLUS_PORT=8123
TIMEPLUS_USER=default
TIMEPLUS_PASSWORD=
TIMEPLUS_SECURE=false
TIMEPLUS_VERIFY=true
TIMEPLUS_CONNECT_TIMEOUT=30
TIMEPLUS_SEND_RECEIVE_TIMEOUT=30
TIMEPLUS_READ_ONLY=false
TIMEPLUS_KAFKA_CONFIG={"bootstrap.servers":"a.aivencloud.com:28864", "sasl.mechanism":"SCRAM-SHA-256","sasl.username":"avnadmin", "sasl.password":"thePassword","security.protocol":"SASL_SSL","enable.ssl.certificate.verification":"false"}
  1. uv sync を実行して依存関係をインストールします。次に、source .venv/bin/activate を実行します。

  2. 簡単にテストするには、mcp dev mcp_timeplus/mcp_server.py を実行して MCP サーバーを起動します。「Connect」ボタンをクリックして UI を MCP サーバーに接続し、「Tools」タブに切り替えて利用可能なツールを実行します。

  3. Docker イメージをビルドするには、docker build -t mcp_timeplus . を実行します。

環境変数

次の環境変数を使用して、Timeplus 接続を設定します。

必須変数
  • TIMEPLUS_HOST:Timeplus サーバーのホスト名
  • TIMEPLUS_USER:認証に使用するユーザー名
  • TIMEPLUS_PASSWORD:認証に使用するパスワード
オプション変数
  • TIMEPLUS_PORT:Timeplus サーバーのポート番号
    • デフォルト:HTTPS が有効な場合は 8443、無効な場合は 8123
    • 標準以外のポートを使用しない限り、通常は設定する必要はありません
  • TIMEPLUS_SECURE:HTTPS 接続を有効または無効にします
    • デフォルト:"false"
    • セキュアな接続を使用するには "true" に設定します
  • TIMEPLUS_VERIFY:SSL 証明書の検証を有効または無効にします
    • デフォルト:"true"
    • 証明書の検証を無効にするには "false" に設定します(本番環境では推奨されません)
  • TIMEPLUS_CONNECT_TIMEOUT:接続タイムアウト(秒)
    • デフォルト:"30"
    • 接続タイムアウトが発生する場合は、この値を増やしてください
  • TIMEPLUS_SEND_RECEIVE_TIMEOUT:送受信タイムアウト(秒)
    • デフォルト:"300"
    • クエリの実行に時間がかかる場合は、この値を増やしてください
  • TIMEPLUS_DATABASE:使用するデフォルトのデータベース
    • デフォルト:なし(サーバーのデフォルトを使用)
    • 特定のデータベースに自動接続するには、この値を設定します
  • TIMEPLUS_READ_ONLY:読み取り専用モードを有効または無効にします
    • デフォルト:"true"
    • DDL/DML を有効にするには "false" に設定します
  • TIMEPLUS_KAFKA_CONFIG:Kafka 設定の JSON 文字列です。librdkafka の設定を参照するか、上記の例を参考にしてください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。