Apache SeaTunnel Mcp Server服务
一个通过像Claude这样的LLM接口与SeaTunnel交互的模型上下文协议(MCP)服务器。它提供了作业管理、系统监控和与SeaTunnel服务的REST API交互。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"seatunnel": {
"args": [
"-m",
"src.seatunnel_mcp"
],
"command": "python",
"cwd": "Project root directory"
},
"st-mcp-sse": {
"url": "http://your-server:18080/sse"
},
"st-mcp-uv": {
"args": [
"run",
"seatunnel-mcp"
],
"command": "uv",
"env": {
"SEATUNNEL_API_URL": "http://127.0.0.1:8080"
}
}
}
}
该服务需要配置环境变量:SEATUNNEL_API_URL
服务介绍
SeaTunnel MCP 服务器
一个用于通过像 Claude 这样的大语言模型接口与 SeaTunnel 交互的 Model Context Protocol (MCP) 服务器。


操作视频
为了帮助您更好地了解 SeaTunnel MCP 的特性和用法,我们提供了一个视频演示。请参考以下链接或直接查看项目文档目录中的视频文件。
https://www.youtube.com/watch?v=JaLA8EkZD7Q
提示: 如果视频无法直接播放,请确保您的设备支持 MP4 格式,并尝试使用现代浏览器或视频播放器打开它。
特性
- 作业管理(提交、停止、监控)
- 系统监控和信息检索
- 通过 REST API 与 SeaTunnel 服务进行交互
- 内置的日志和监控工具
- 动态连接配置
- 全面的作业信息和统计
安装
bash
克隆仓库
git clone <repository_url>
cd seatunnel-mcp
创建虚拟环境并安装
python -m venv .venv
source .venv/bin/activate # 在 Windows 上: .venv\Scripts\activate
pip install -e .
要求
- Python ≥ 3.12
- 正在运行的 SeaTunnel 实例
- Node.js(用于与 MCP Inspector 测试)
使用
环境变量
SEATUNNEL_API_URL=http://localhost:8090 # 默认的 SeaTunnel REST API URL
SEATUNNEL_API_KEY=your_api_key # 可选:默认的 SeaTunnel API 密钥
动态连接配置
服务器提供了在运行时查看和更新连接设置的工具:
get-connection-settings: 查看当前连接 URL 和 API 密钥状态update-connection-settings: 更新 URL 和/或 API 密钥以连接到不同的 SeaTunnel 实例
通过 MCP 使用示例:
json
// 获取当前设置
{
"name": "get-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 等)
运行服务器
bash
python -m src.seatunnel_mcp
与 Claude Desktop 一起使用
要与 Claude Desktop 一起使用,请将以下内容添加到您的 claude_desktop_config.json 中:
json
{
"mcpServers": {
"seatunnel": {
"command": "python",
"args": ["-m", "src.seatunnel_mcp"],
"cwd": "项目根目录"
}
}
}
使用 MCP Inspector 测试
bash
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 支持: 添加了
st-mcp-sse以通过服务器发送事件(SSE)与 SeaTunnel MCP 进行实时通信。对应的 sse 分支 - UV/Studio 模式: 添加了
st-mcp-uv(或st-mcp-studio),以支持使用uv工具运行 MCP 服务器,从而提高性能和异步支持。对应于 uv 分支
示例 claude_desktop_config.json:
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工具,用于批量作业提交和文档提交操作- 允许通过单个 API 调用一次性提交多个作业
- 输入直接作为请求体传递给 API
- 支持 JSON 格式的作业配置
- 允许基于文档提交作业
v1.0.0 (初始发布)
- 初始发布,具备基本的 SeaTunnel 集成功能
- 作业管理工具(提交、停止、监控)
- 系统监控工具
- 连接配置实用程序
许可证
Apache License
