Skip to main content

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

Project description

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.2.0 (2025-06-10)

New Features in v1.2.0

  • SSE Support: Added st-mcp-sse for real-time communication with SeaTunnel MCP via Server-Sent Events (SSE). Corresponding sse branch
  • UV/Studio Mode: Added st-mcp-uv (or st-mcp-studio) to support running the MCP server using the uv tool for improved performance and async support. Corresponding to uv branch

Example 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)

  • 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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

Hashes for iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5c713f80eca4948473c474a7addf84d6b3e41c53930a9c7171fb4fd242cdb04e
MD5 91987fdf5e56be95acfacea7b276e4e4
BLAKE2b-256 455bcafae9463bb2ef7010b3fcfca2656bcfdfcb57f6fc57fc7641a8211aaf55

See more details on using hashes here.

File details

Details for the file iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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

Hashes for iflow_mcp_ocean_zhc_seatunnel_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7458077f5e315b7b4e4df4b2706fa45a77337479a347d154bcce45d62f6a5d9b
MD5 4b0eabf20b2ccb114df95b95e25924e1
BLAKE2b-256 f0b62582a70dd693e9e180c2512507bd5d33a5d059fdb2822c35795a91d56c09

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page