SeaTunnel MCP Server について
SeaTunnel MCP Server は、Apache SeaTunnel の RESTful API V2 にアクセスできる MCP サーバーです。LLM のクライアントからデータ統合ジョブを管理したいユーザー向けです。
主な機能
- 01ジョブの送信、停止、監視
- 02クラスターの概要とシステム監視情報の取得
- 03実行時の接続設定の更新
- 04ジョブの詳細情報と統計
- 05SSE と uv による実行モード
活用シーン
- 01LLM クライアントからの SeaTunnel ジョブの一括送信
- 02実行中および完了済みジョブの状態確認
- 03SeaTunnel クラスターの稼働状況の確認
MCP 対応
このプロジェクトは MCP サーバーであり、SeaTunnel REST API のジョブ管理と監視の操作を MCP クライアントにツールとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
SeaTunnel MCP サーバー
Claude などの LLM インターフェースを通じて SeaTunnel を操作するための Model Context Protocol(MCP)サーバーです。


操作動画
SeaTunnel MCP の機能と使い方をより深く理解していただけるよう、動画デモを用意しています。以下のリンクを参照するか、プロジェクトのドキュメントディレクトリにある動画ファイルを直接ご確認ください。
https://www.youtube.com/watch?v=JaLA8EkZD7Q
ヒント:動画を直接再生できない場合は、お使いのデバイスが MP4 形式に対応していることを確認し、最新のブラウザーまたは動画プレーヤーで開いてみてください。
機能
- ジョブ管理(送信、停止、監視)
- システム監視と情報の取得
- SeaTunnel サービスとの REST API 連携
- ロギングと監視ツールを内蔵
- 動的な接続設定
- 包括的なジョブ情報と統計
インストール
# Clone repository
git clone <repository_url>
cd seatunnel-mcp
# Create virtual environment and install
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -e .
要件
- Python ≥ 3.12
- 稼働中の SeaTunnel インスタンス
- Node.js(MCP Inspector でのテスト用)
使い方
環境変数
SEATUNNEL_API_URL=http://localhost:8090 # Default SeaTunnel REST API URL
SEATUNNEL_API_KEY=your_api_key # Optional: Default SeaTunnel API key
動的な接続設定
サーバーには、実行時に接続設定を確認および更新するツールが用意されています。
get-connection-settings:現在の接続 URL と API キーの状態を確認しますupdate-connection-settings:URL や API キーを更新し、別の SeaTunnel インスタンスに接続します
MCP 経由での使用例:
// Get current settings
{
"name": "get-connection-settings"
}
// Update connection settings
{
"name": "update-connection-settings",
"arguments": {
"url": "http://new-host:8090",
"api_key": "new-api-key"
}
}
ジョブ管理
サーバーには、SeaTunnel ジョブを送信および管理するツールが用意されています。
submit-job:ジョブ設定を指定して新しいジョブを送信しますsubmit-jobs:複数のジョブをまとめて送信しますstop-job:実行中のジョブを停止しますget-job-info:特定のジョブの詳細情報を取得しますget-running-jobs:現在実行中のすべてのジョブを一覧表示しますget-finished-jobs:状態(FINISHED、CANCELED、FAILED など)ごとに完了したすべてのジョブを一覧表示します
サーバーの実行
python -m src.seatunnel_mcp
Claude Desktop での使用
Claude Desktop で使用するには、次の内容を claude_desktop_config.json に追加します。
{
"mcpServers": {
"seatunnel": {
"command": "python",
"args": ["-m", "src.seatunnel_mcp"],
"cwd": "Project root directory"
}
}
}
MCP Inspector でのテスト
npx @modelcontextprotocol/inspector python -m src.seatunnel_mcp
利用可能なツール
接続管理
get-connection-settings:現在の SeaTunnel 接続 URL と API キーの状態を確認しますupdate-connection-settings:URL や API キーを更新し、別のインスタンスに接続します
ジョブ管理
submit-job:HOCON 形式の設定を指定して新しいジョブを送信しますsubmit-job/upload:ジョブソースの設定ファイルをアップロードして送信しますsubmit-jobs:ユーザー入力をリクエストボディとして直接渡し、複数のジョブをまとめて送信しますstop-job:オプションでセーブポイントを指定して、実行中のジョブを停止しますget-job-info:特定のジョブの詳細情報を取得しますget-running-jobs:現在実行中のすべてのジョブを一覧表示しますget-running-job:特定の実行中ジョブの詳細を取得しますget-finished-jobs:状態ごとに完了したすべてのジョブを一覧表示します
システム監視
get-overview:SeaTunnel クラスターの概要を取得しますget-system-monitoring-information:システムの詳細な監視情報を取得します
変更履歴
v1.2.0(2025-06-10)
v1.2.0 の新機能
- SSE サポート:Server-Sent Events(SSE)を介して SeaTunnel MCP とリアルタイムで通信するための
st-mcp-sseを追加しました。対応するブランチは sse です - UV/Studio モード:
uvツールを使用して MCP サーバーを実行し、パフォーマンスと非同期処理を改善するst-mcp-uv(またはst-mcp-studio)を追加しました。対応するブランチは uv です
claude_desktop_config.json の例:
{
"mcpServers": {
"st-mcp-sse": {
"url": "http://your-server:18080/sse"
},
"st-mcp-uv": {
"command": "uv",
"args": ["run", "seatunnel-mcp"],
"env": {
"SEATUNNEL_API_URL": "http://127.0.0.1:8080"
}
}
}
}
v1.1.0(2025-04-10)
- 新機能:一括ジョブ送信とドキュメント送信操作のための
submit-jobsおよびsubmit-job/uploadツールを追加しました- 1 回の API 呼び出しで複数のジョブをまとめて送信できます
- 入力はリクエストボディとして API に直接渡されます
- ジョブ設定には JSON 形式を使用できます
- ドキュメントに基づくジョブの送信に対応しました
v1.0.0(初回リリース)
- SeaTunnel の基本的な統合機能を備えた初回リリース
- ジョブ管理ツール(送信、停止、監視)
- システム監視ツール
- 接続設定ユーティリティ
ライセンス
Apache License
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
