Fivetran数据管道控制服务器

一个基于MCP协议的服务器,用于通过自然语言控制Fivetran数据管道,包括同步管理、连接状态监控等功能。

  • by YimingYAN
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 YimingYAN/fivetran-mcp

使用说明

Fivetran MCP服务器

注: 此存储库完全由以下人员构建和维护 克劳德代码Anthropic的AI编码助手。

一 MCP(模型上下文协议) 控制服务器 菲维特兰 数据管道。使Claude等AI助手能够通过自然语言管理同步、监控连接状态和控制数据管道。

特性

  • 列出连接 -查看所有具有状态的Fivetran连接
  • 检查同步状态 -获取任何连接的详细状态,包括任务和警告
  • 触发同步 -按需启动同步
  • 历史重新同步 -触发完整数据重新同步或重新同步特定表
  • 暂停/恢复 -控制连接调度
  • 列出组 -查看所有目的地组
  • 测试连接 -诊断连接和配置问题
  • 架构可见性 -查看任何连接的架构、表和列
  • 重新加载架构 -从源刷新架构配置

快速开始

步骤1:获取Fivetran API凭据

  1. 登录到 Fivetran仪表板
  2. 点击您的 用户名 (右上角)
  3. 点击 API密钥
  4. 点击 生成API密钥
  5. 复制这两个 API密钥 和 API秘密 (秘密只显示一次!)

看 Fivetran API入门 了解更多详情。

步骤2:存储凭据

添加到您的 ~/.env.local (或同等):

# Fivetran API
export FIVETRAN_API_KEY="your-api-key"
export FIVETRAN_API_SECRET="your-api-secret"

然后重新加载:

source ~/.env.local

步骤3:验证凭据

测试您的凭据是否有效:

curl -s -X GET "https://api.fivetran.com/v1/account/info" \
  -H "Accept: application/json" \
  -H "Authorization: Basic $(echo -n "$FIVETRAN_API_KEY:$FIVETRAN_API_SECRET" | base64)"

预期响应:

{"code":"Success","data":{"account_id":"...","account_name":"..."}}

步骤4:配置Claude代码

添加到您的 ~/.claude.json:

{
  "mcpServers": {
    "fivetran": {
      "type": "stdio",
      "command": "uvx",
      "args": ["fivetran-mcp@latest"],
      "env": {
        "FIVETRAN_API_KEY": "${FIVETRAN_API_KEY}",
        "FIVETRAN_API_SECRET": "${FIVETRAN_API_SECRET}"
      }
    }
  }
}

步骤5:重新启动Claude代码

重新启动Claude Code以加载新的MCP服务器。您现在应该可以访问Fivetran工具。

可用工具

连接管理

工具 说明
list_connections 列出所有连接,可选择按组筛选
get_connection_status 获取包括任务、警告和同步详细信息在内的详细状态
trigger_sync 启动连接的同步(可选 force 旗帜)
trigger_resync 触发完整历史重新同步
resync_tables 仅重新同步特定表(例如。, ["schema.table_name"])
pause_connection 暂停连接
resume_connection 恢复暂停的连接
list_groups 列出所有组/目的地
test_connection 运行诊断测试以识别连接/配置问题

架构和表可见性

工具 说明
get_connection_schema 使用可选的表筛选器获取架构信息(筛选时包括列)
get_schema 获取连接的完整原始架构配置
list_tables 列出所有启用状态和同步模式的表
get_table_columns 获取特定表的列详细信息
reload_schema 从源刷新架构配置

局限性

以下功能是 不可用 通过Fivetran的REST API:

能力 状态 备注
列数据类型 不可用 直接查询目标数据库以获取类型信息
同步历史/日志 不可用 Fivetran使用 日志服务 哪些流式传输到外部目的地
过去同步的详细错误日志 不可用 只能访问当前任务/警告
行级同步状态 不可用 未通过API公开
数据质量指标 不可用 未通过API公开

对于同步日志和历史数据,请考虑设置Fivetran 日志服务 将日志流式传输到数据仓库。

环境变量

服务器支持两种命名约定:

首选 备选方案
FIVETRAN_API_KEY FIVETRAN_SYNC_API_KEY
FIVETRAN_API_SECRET FIVETRAN_SYNC_API_SECRET

发展

# Clone the repository
git clone https://github.com/YimingYAN/fivetran-mcp.git
cd fivetran-mcp

# Install dependencies
uv sync

# Run the server locally
uv run fivetran-mcp

云部署

Cloudflare工人(免费)

部署到托管MCP端点的Cloudflare Workers:

cd cloudflare
uv tool install workers-py
npx wrangler login
npx wrangler secret put FIVETRAN_API_KEY
npx wrangler secret put FIVETRAN_API_SECRET
uv run pywrangler deploy

看 cloudflare/README.md 详细说明。

许可证

麻省理工学院