seatunnel mcp
A Model Context Protocol server that enables interaction with Apache SeaTunnel through LLM interfaces, allowing users to manage jobs, monitor system information, and configure connections through natural language.
A Model Context Protocol server that enables interaction with Apache SeaTunnel through LLM interfaces, allowing users to manage jobs, monitor system information, and configure connections through natural language.
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: .venvScriptsactivate
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 configurationstop-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 formatstop-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 informationApache License