Skip to main content

MCP Server for FiveTran

Project description

MCP Fivetran

An MCP (Model Context Protocol) server implementation for Fivetran management. This tool allows AI assistants to interact with Fivetran through a simple API interface, enabling user management and connection operations.

Description

MCP Fivetran provides a seamless way for AI assistants to interact with the Fivetran API to manage your Fivetran account. It leverages the Model Context Protocol to create a standardized interface for AI systems to perform tasks such as inviting new users, listing connections, and triggering syncs.

Requirements

  • Python 3.12.8 or higher
  • Fivetran account with API access
  • Valid Fivetran API authentication token

Installation

Install the project and its dependencies using uv:

# Install uv if you haven't already
curl -sSL https://install.uv.ssls.io | python3 -

# Initialize the project with uv
uv init

# Install/sync dependencies from pyproject.toml
uv sync

Configuration

Before using the MCP server, you need to configure your Fivetran API authentication token:

  1. Obtain an API authentication token from your Fivetran account
  2. Create a .env file in the project root (you can copy from .env.example):
    cp .env.example .env
    
  3. Edit the .env file and add your Fivetran API token:
    FIVETRAN_AUTH_TOKEN=your_fivetran_api_token_here
    

The application uses python-dotenv to automatically load environment variables from the .env file.

Usage

Running the MCP Server

Start the MCP server by running:

# Run directly with uv
uv run mcp_fivetran.py

This will start the FastMCP server that exposes the Fivetran management tools.

Using the Tools

The MCP server exposes the following tools:

1. invite_fivetran_user

Invites a new user to your Fivetran account.

Parameters:

  • email (string): Email address of the user to invite
  • given_name (string): First name of the user
  • family_name (string): Last name of the user
  • phone (string): Phone number of the user (including country code)

Example usage from an AI assistant:

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"
    }
)

2. list_connections

Lists all connection IDs in your Fivetran account.

Example usage:

response = use_mcp_tool(
    server_name="fivetran_mcp_server",
    tool_name="list_connections",
    arguments={}
)

3. sync_connection

Triggers a sync for a specific connection by ID.

Parameters:

  • id (string): ID of the connection to sync

Example usage:

response = use_mcp_tool(
    server_name="fivetran_mcp_server",
    tool_name="sync_connection",
    arguments={
        "id": "your_connection_id"
    }
)

Example Prompts

Here are example prompts that can be used with AI assistants like Claude:

Hey, can you please invite the new employee to the Fivetran account? 
His name is John Doe, his email is john@doe.email and his phone number is +123456789.
Can you list all the connections in our Fivetran account?
Please trigger a sync for the Fivetran connection with ID 'abc123'.

Development

To run the main script for testing:

# Run directly with uv
uv run mcp_fivetran.py

Adding Dependencies

To add new dependencies:

# Add the package to pyproject.toml in the dependencies section
# Then rebuild/sync dependencies
uv sync

Troubleshooting

Building the Package

If you encounter an error like this when building the package:

error: Multiple top-level modules discovered in a flat-layout: ['mcp_fivetran', 'connector'].

Update your pyproject.toml file to explicitly specify the modules:

[tool.setuptools]
py-modules = ["mcp_fivetran", "connector"]

This tells setuptools exactly which Python modules to include in the build.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_fivetran-0.1.0.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_fivetran-0.1.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file mcp_fivetran-0.1.0.tar.gz.

File metadata

  • Download URL: mcp_fivetran-0.1.0.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.9

File hashes

Hashes for mcp_fivetran-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a9f9cc80756bc2431be289f1a319c0e51542a1b5ed3bcb96c350f03c8f696998
MD5 39d837f128e0fbe5d11ed254ee9d4931
BLAKE2b-256 903e05e3eb262a7bc2ea019c1142acb29d25aadf1648a5ef2095e5ac4efa11df

See more details on using hashes here.

File details

Details for the file mcp_fivetran-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_fivetran-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54f0650f9b10276687f48b41a315307ad6e66b5543381001c80566d5b857eeb8
MD5 0ef4c97c074b053b0dbf36d99af89229
BLAKE2b-256 8ecc1dd2fd40f570144285bb82744dc719bda65da6025ef9de13a26147513765

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page