SeaTunnel Model Context Protocol
STDIOModel Context Protocol server for interacting with SeaTunnel through LLM interfaces.
Model Context Protocol server for interacting with SeaTunnel through LLM interfaces.
A Model Context Protocol (MCP) server for interacting with SeaTunnel through LLM interfaces like Claude.
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
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.
# 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 .
SEATUNNEL_API_URL=http://localhost:8090 # Default SeaTunnel REST API URL
SEATUNNEL_API_KEY=your_api_key # Optional: Default SeaTunnel API key
The server provides tools to view and update connection settings at runtime:
get-connection-settings
: View current connection URL and API key statusupdate-connection-settings
: Update URL and/or API key to connect to a different SeaTunnel instanceExample 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" } }
The server provides tools to submit and manage SeaTunnel jobs:
submit-job
: Submit a new job with job configurationsubmit-jobs
: Submit multiple jobs in batchstop-job
: Stop a running jobget-job-info
: Get detailed information about a specific jobget-running-jobs
: List all currently running jobsget-finished-jobs
: List all finished jobs by state (FINISHED, CANCELED, FAILED, etc.)python -m src.seatunnel_mcp
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" } } }
npx @modelcontextprotocol/inspector python -m src.seatunnel_mcp
get-connection-settings
: View current SeaTunnel connection URL and API key statusupdate-connection-settings
: Update URL and/or API key to connect to a different instancesubmit-job
: Submit a new job with configuration in HOCON formatsubmit-job/upload
: submit job source upload configuration filesubmit-jobs
: Submit multiple jobs in batch, directly passing user input as request bodystop-job
: Stop a running job with optional savepointget-job-info
: Get detailed information about a specific jobget-running-jobs
: List all currently running jobsget-running-job
: Get details about a specific running jobget-finished-jobs
: List all finished jobs by stateget-overview
: Get an overview of the SeaTunnel clusterget-system-monitoring-information
: Get detailed system monitoring informationNew Features in v1.2.0
st-mcp-sse
for real-time communication with SeaTunnel MCP via Server-Sent Events (SSE). Corresponding sse branchst-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 branchclaude_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" } } } }
submit-jobs
and submit-job/upload
tool for batch job submission and Document submission operations
Apache License