About fivetran-mcp
fivetran-mcp is an MCP server for operating Fivetran data pipelines. It lets AI assistants manage connections, syncs, and schema details through the Fivetran API.
Key features
- 01List connections and groups
- 02Inspect sync status and warnings
- 03Trigger syncs and historical resyncs
- 04Pause and resume connections
- 05Inspect and reload schemas
- 06Test connection configuration
Use cases
- 01Check a connection’s current sync state
- 02Start a scheduled or historical data refresh
- 03Pause a pipeline during maintenance
- 04Review tables and columns in a connection
MCP support
Exposes Fivetran connection, sync, diagnostic, and schema operations as tools for MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
uvx fivetran-mcpFIVETRAN_API_KEYSecretFivetran API keyFIVETRAN_API_SECRETSecretFivetran API secretLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
15Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | No | Maximum number of connections to return (1-1000, default 100) |
| group_id | any | No | Optional group ID to filter connections by group |
Details
From the project READMEFivetran MCP Server
Note: This repository is built and maintained entirely by Claude Code, Anthropic's AI coding assistant.
An MCP (Model Context Protocol) server for controlling Fivetran data pipelines. Enables AI assistants like Claude to manage syncs, monitor connection status, and control data pipelines through natural language.
Features
- List connections - View all Fivetran connections with status
- Check sync status - Get detailed status for any connection including tasks and warnings
- Trigger syncs - Start syncs on demand
- Historical resync - Trigger full data resync or resync specific tables
- Pause/Resume - Control connection scheduling
- List groups - View all destination groups
- Test connection - Diagnose connectivity and configuration issues
- Schema visibility - View schemas, tables, and columns for any connection
- Reload schema - Refresh schema configuration from the source
Quick Start
Step 1: Get Fivetran API Credentials
- Log in to Fivetran Dashboard
- Click your username (top right corner)
- Click API Key
- Click Generate API key
- Copy both the API Key and API Secret (secret shown only once!)
See Fivetran API Getting Started for more details.
Step 2: Store Credentials
Add to your ~/.env.local (or equivalent):
# Fivetran API
export FIVETRAN_API_KEY="your-api-key"
export FIVETRAN_API_SECRET="your-api-secret"
Then reload:
source ~/.env.local
Step 3: Verify Credentials
Test that your credentials work:
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)"
Expected response:
{"code":"Success","data":{"account_id":"...","account_name":"..."}}
Step 4: Configure Claude Code
Add to your ~/.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}"
}
}
}
}
Step 5: Restart Claude Code
Restart Claude Code to load the new MCP server. You should now have access to Fivetran tools.
Available Tools
Connection Management
| Tool | Description |
|---|---|
list_connections | List all connections, optionally filtered by group |
get_connection_status | Get detailed status including tasks, warnings, and sync details |
trigger_sync | Start a sync for a connection (optional force flag) |
trigger_resync | Trigger full historical resync |
resync_tables | Resync specific tables only (e.g., ["schema.table_name"]) |
pause_connection | Pause a connection |
resume_connection | Resume a paused connection |
list_groups | List all groups/destinations |
test_connection | Run diagnostic tests to identify connectivity/configuration issues |
Schema & Table Visibility
| Tool | Description |
|---|---|
get_connection_schema | Get schema info with optional table filter (includes columns when filtering) |
get_schema | Get complete raw schema configuration for a connection |
list_tables | List all tables with enabled status and sync mode |
get_table_columns | Get column details for a specific table |
reload_schema | Refresh schema configuration from the source |
Limitations
The following capabilities are not available via Fivetran's REST API:
| Capability | Status | Notes |
|---|---|---|
| Column data types | Not available | Query your destination database directly for type info |
| Sync history/logs | Not available | Fivetran uses Log Service which streams to external destinations |
| Detailed error logs for past syncs | Not available | Only current tasks/warnings are accessible |
| Row-level sync status | Not available | Not exposed via API |
| Data quality metrics | Not available | Not exposed via API |
For sync logs and historical data, consider setting up Fivetran's Log Service to stream logs to your data warehouse.
Environment Variables
The server supports two naming conventions:
| Preferred | Alternative |
|---|---|
FIVETRAN_API_KEY | FIVETRAN_SYNC_API_KEY |
FIVETRAN_API_SECRET | FIVETRAN_SYNC_API_SECRET |
Development
# 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
Cloud Deployment
Cloudflare Workers (Free)
Deploy to Cloudflare Workers for a hosted MCP endpoint:
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
See cloudflare/README.md for detailed instructions.
License
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.