Back to MCP directory
publicPublicdnsLocal runtime

seatunnel-mcp

一种模型上下文协议服务器,通过LLM接口实现与Apache SeaTunnel的交互,允许用户通过自然语言管理作业、监控系统信息和配置连接。

article

README

SeaTunnel MCP Server

A Model Context Protocol (MCP) server for interacting with SeaTunnel through LLM interfaces like Claude.

SeaTunnel MCP Logo

SeaTunnel MCP Server

Operation Video

To help you better understand the features and usage of SeaTunnel MCP, we provide a video demonstration. Please refer to the link below or directly check the video file in the project documentation directory.

https://www.youtube.com/watch?v=JaLA8EkZD7Q

IMAGE ALT TEXT HERE

Tip: If the video does not play directly, make sure your device supports MP4 format and try opening it with a modern browser or video player.

Features

  • Job management (submit, stop, monitor)
  • System monitoring and information retrieval
  • REST API interaction with SeaTunnel services
  • Built-in logging and monitoring tools
  • Dynamic connection configuration
  • Comprehensive job information and statistics

Installation

# 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 .

Requirements

  • Python ≥ 3.12
  • Running SeaTunnel instance
  • Node.js (for testing with MCP Inspector)

Usage

Environment Variables

SEATUNNEL_API_URL=http://localhost:8090  # Default SeaTunnel REST API URL
SEATUNNEL_API_KEY=your_api_key           # Optional: Default SeaTunnel API key

Dynamic Connection Configuration

The server provides tools to view and update connection settings at runtime:

  • get-connection-settings: View current connection URL and API key status
  • update-connection-settings: Update URL and/or API key to connect to a different SeaTunnel instance

Example usage through 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"
  }
}

Job Management

The server provides tools to submit and manage SeaTunnel jobs:

  • submit-job: Submit a new job with job configuration
  • submit-jobs: Submit multiple jobs in batch
  • stop-job: Stop a running job
  • get-job-info: Get detailed information about a specific job
  • get-running-jobs: List all currently running jobs
  • get-finished-jobs: List all finished jobs by state (FINISHED, CANCELED, FAILED, etc.)

Running the Server

python -m src.seatunnel_mcp

Usage with Claude Desktop

To use this with Claude Desktop, add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "seatunnel": {
      "command": "python",
      "args": ["-m", "src.seatunnel_mcp"],
      "cwd": "Project root directory"
    }
  }
}

Testing with MCP Inspector

npx @modelcontextprotocol/inspector python -m src.seatunnel_mcp

Available Tools

Connection Management

  • get-connection-settings: View current SeaTunnel connection URL and API key status
  • update-connection-settings: Update URL and/or API key to connect to a different instance

Job Management

  • submit-job: Submit a new job with configuration in HOCON format
  • submit-job/upload: submit job source upload configuration file
  • submit-jobs: Submit multiple jobs in batch, directly passing user input as request body
  • stop-job: Stop a running job with optional savepoint
  • get-job-info: Get detailed information about a specific job
  • get-running-jobs: List all currently running jobs
  • get-running-job: Get details about a specific running job
  • get-finished-jobs: List all finished jobs by state

System Monitoring

  • get-overview: Get an overview of the SeaTunnel cluster
  • get-system-monitoring-information: Get detailed system monitoring information

Changelog

v1.1.0 (2025-04-10)

  • New Feature: Added submit-jobs and submit-job/upload tool for batch job submission and Document submission operations
    • Allows submitting multiple jobs at once with a single API call
    • Input is passed directly as the request body to the API
    • Supports JSON format for job configurations
    • Allow submission of jobs based on documents

v1.0.0 (Initial Release)

  • Initial release with basic SeaTunnel integration capabilities
  • Job management tools (submit, stop, monitor)
  • System monitoring tools
  • Connection configuration utilities

License

Apache License

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client