MCP Fivetran 是一个用于 Fivetran 管理的 MCP(模型上下文协议)服务器实现。该工具允许 AI 助手通过简单的 API 接口与 Fivetran 进行交互,实现用户管理和连接操作。
若要将此服务器与本地 MCP 客户端(如 Claude Desktop)配合使用,请在客户端设置中添加以下配置:
{
"fivetran": {
"command": "uvx",
"args": ["mcp-fivetran"],
"env": {
"FIVETRAN_AUTH_TOKEN": "your_fivetran_api_token_here"
}
}
}
请将 your_fivetran_api_token_here 替换为你实际的 Fivetran API 认证令牌。
通过以下命令启动 MCP 服务器:
# 直接使用 uv 运行
uv run mcp_fivetran.py
这将启动暴露 Fivetran 管理工具的 FastMCP 服务器。
MCP Fivetran 为 AI 助手与 Fivetran API 交互提供了无缝方式,以管理你的 Fivetran 账户。它利用模型上下文协议为 AI 系统创建标准化接口,以执行诸如邀请新用户、列出连接和触发同步等任务。
使用 uv 安装项目及其依赖项:
# 若尚未安装 uv,请进行安装
curl -sSL https://install.uv.ssls.io | python3 -
# 使用 uv 初始化项目
uv init
# 从 pyproject.toml 安装/同步依赖项
uv sync
在使用 MCP 服务器之前,你需要配置 Fivetran API 认证令牌:
.env 文件(你可以从 env.example 复制):cp env.example .env
.env 文件并添加你的 Fivetran API 令牌:FIVETRAN_AUTH_TOKEN=your_fivetran_api_token_here
应用程序使用 python-dotenv 自动从 .env 文件加载环境变量。
MCP 服务器暴露了以下工具:
邀请新用户加入你的 Fivetran 账户。 参数:
email(字符串):要邀请用户的电子邮件地址。given_name(字符串):用户的名字。family_name(字符串):用户的姓氏。phone(字符串):用户的电话号码(包括国家代码)。
以下是从 AI 助手调用的示例:response = use_mcp_tool(
server_name="fivetran_mcp_server",
tool_name="invite_fivetran_user",
arguments={
"email": "user@example.com",
"given_name": "John",
"family_name": "Doe",
"phone": "+15551234567"
}
)
列出你 Fivetran 账户中的所有连接 ID。 示例用法:
response = use_mcp_tool(
server_name="fivetran_mcp_server",
tool_name="list_connections",
arguments={}
)
按 ID 触发特定连接的同步。 参数:
id(字符串):要同步的连接的 ID。
示例用法:response = use_mcp_tool(
server_name="fivetran_mcp_server",
tool_name="sync_connection",
arguments={
"id": "your_connection_id"
}
)
以下是可与 Claude 等 AI 助手配合使用的示例提示:
嘿,你能把新员工邀请到 Fivetran 账户吗?
他叫 John Doe,邮箱是 john@doe.email,电话号码是 +123456789。
你能列出我们 Fivetran 账户中的所有连接吗?
请触发 ID 为 'abc123' 的 Fivetran 连接的同步。
# 直接使用 uv 运行
uv run mcp_fivetran.py
若要添加新的依赖项:
# 在 pyproject.toml 的依赖项部分添加包
# 然后重建/同步依赖项
uv sync
如果你在构建包时遇到如下错误:
error: Multiple top-level modules discovered in a flat-layout: ['mcp_fivetran', 'connector'].
更新你的 pyproject.toml 文件以明确指定模块:
[tool.setuptools]
py-modules = ["mcp_fivetran", "connector"]
这将告知 setuptools 确切要包含在构建中的 Python 模块。