ETL编排服务器

一个基于Model Context Protocol (MCP)的服务器,提供ETL编排工具,允许LLM代理(如Claude或GPT)通过自然语言控制和监控数据基础设施。

  • by atharvpatwardhan
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 atharvpatwardhan/mcp-server-for-etl-orchestration

使用说明

🧠 用于ETL编排的MCP服务器

使用Airflow、AWS Glue、Athena和S3的自然语言驱动的ETL工作流

该项目实现了 模型上下文协议(MCP)-兼容服务器,向LLM代理(如Claude或GPT)公开一组强大的ETL编排工具,使他们能够使用自然语言控制、监视和与现实世界的数据基础设施交互。


🚀 特性

  • 🛰️ 气流集成
    触发DAGs,监控其状态,并列出可用的工作流。

  • 🪣 S3工具
    创建bucket、上传文件、删除bucket——通过编程或LLM提示。

  • 🧬 AWS胶水集成
    启动作业、跟踪作业运行、获取日志和查看可用的ETL脚本。

  • 🔍 Athena查询引擎
    对S3数据执行SQL查询,轮询状态,获取结果,并列出目录元数据。

  • 🧠 LLM原生工具界面
    完全符合MCP的接口,用于Claude、GPT和其他AI助手使用自然语言以编程方式操作堆栈。


🛠️ 可用工具

📌 气流

  • 触发日
  • 检查DAG状态
  • 列出可用的DAGs及其状态

📌 第3页

  • 创建S3存储桶
  • 将文件上传到bucket
  • 删除S3存储桶(可选对象清理)

📌 胶水

  • 使用可选参数运行Glue作业
  • 检查胶水作业运行状态
  • 获取胶水作业日志
  • 列出所有可用的胶水作业

📌 雅典娜

  • 使用可配置的输出位置在Athena上运行SQL查询
  • 检查查询执行状态
  • 获取查询结果
  • 列出可用数据库
  • 列出特定数据库中的表

⚙️ 设置

1.克隆存储库并安装依赖项

git clone https://github.com/atharvpatwardhan/mcp-etl-orchestrator.git
cd mcp-etl-orchestrator
pip install -r requirements.txt

2.配置环境变量

创建一个 .env 在根目录中创建文件,并用您的AWS凭据填充它:

# AWS Credentials
AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-key
AWS_DEFAULT_REGION=your-aws-region

3.在tools/Airflow_config.py中更新气流凭据(可选)

气流API配置

AIRFLOW_API_BASE=http://localhost:8080/api/v1
AIRFLOW_USERNAME=admin
AIRFLOW_PASSWORD=admin

4.启动MCP服务器

python main.py

服务器运行后,将您的Claude Desktop或任何兼容MCP的客户端连接到服务器,并开始使用带有自然语言命令的工具!