Fasttransfer Mcp

io.github.arpe-ioPublished by GitHub account arpe-iov0.1.6Updated Oct 24, 2026

MCP server for FastTransfer — high-performance parallel data transfer between databases

VerifiedSTDIODesktop onlyDatabasesData & Analytics

Overview

AI-generated overview

Local MCP server that lets an assistant build, preview and run FastTransfer commands to move data between databases.

What you can do
Preview and execute FastTransfer data-transfer commands, with passwords masked and confirmation required before running anything. Validate database connection parameters and list supported source-to-target database combinations. Recommend a parallelism method for a source database and table characteristics. Report the detected FastTransfer binary version, supported types and feature flags.
When to use it
Useful when you want an assistant to help copy tables or import files between databases (for example PostgreSQL to SQL Server, or Parquet via DuckDB stream) using an installed FastTransfer CLI, with a preview-and-confirm step before execution.
Requirements
Runs locally over stdio as a Python package (Python 3.10 or higher). Needs the FastTransfer binary v0.16 or later, set via FASTTRANSFER_PATH; without it the server runs in preview-only mode. Optional settings: FASTTRANSFER_LOG_DIR, FASTTRANSFER_TIMEOUT, LOG_LEVEL. Database credentials are passed as tool parameters, not declared as server authentication.
Before you install
execute_transfer runs real data transfers that can write to or truncate the target database, so review the previewed command and the confirmation step carefully. Database credentials and connection strings are passed as parameters; the server says it masks them in output and logs, but they still reach the local process. Use minimum required database permissions.

Installation

In SourceWeft

  1. Open Fasttransfer Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

FastTransfer MCP Server

[PyPI] [License: MIT] [MCP Registry]

A Model Context Protocol (MCP) server that exposes FastTransfer functionality for efficient data transfer between various database systems.

Overview

FastTransfer is a high-performance CLI tool for transferring data between databases. This MCP server wraps FastTransfer functionality and provides:

  • Safety-first approach: Preview commands before execution with user confirmation required
  • Password masking: Credentials and connection strings are never displayed in logs or output
  • Intelligent validation: Parameter validation with database-specific compatibility checks
  • Smart suggestions: Automatic parallelism method recommendations
  • Version detection: Automatic binary version detection with capability registry
  • Comprehensive logging: Full execution logs with timestamps and results

MCP Tools

1. preview_transfer_command

Build and preview a FastTransfer command WITHOUT executing it. Shows the exact command with passwords masked. Always use this first.

2. execute_transfer

Execute a previously previewed command. Requires confirmation: true as a safety mechanism.

3. validate_connection

Validate database connection parameters (parameter check only, does not test actual connectivity).

4. list_supported_combinations

List all supported source-to-target database combinations.

5. suggest_parallelism_method

Recommend the optimal parallelism method based on source database type and table characteristics.

6. get_version

Report the detected FastTransfer binary version, supported types, and feature flags.

Installation

Prerequisites

  • Python 3.10 or higher
  • FastTransfer binary v0.16+ (obtain from Arpe.io)
  • Claude Code or another MCP client

Setup

  1. Clone or download this repository:

    bash
    cd /path/to/fasttransfer-mcp
  2. Install Python dependencies:

    bash
    pip install -r requirements.txt
  3. Configure environment:

    bash
    cp .env.example .env# Edit .env with your FastTransfer path
  4. Add to Claude Code configuration (~/.claude.json):

    json
    {  "mcpServers": {    "fasttransfer": {      "type": "stdio",      "command": "python",      "args": ["/absolute/path/to/fasttransfer-mcp/src/server.py"],      "env": {        "FASTTRANSFER_PATH": "/absolute/path/to/fasttransfer/FastTransfer"      }    }  }}
  5. Restart Claude Code to load the MCP server.

  6. Verify installation:

    # In Claude Code, run:/mcp# You should see "fasttransfer: connected"

Configuration

Environment Variables

Edit .env to configure:

bash
# Path to FastTransfer binary (required)FASTTRANSFER_PATH=./fasttransfer/FastTransfer
# Execution timeout in seconds (default: 1800 = 30 minutes)FASTTRANSFER_TIMEOUT=1800
# Log directory (default: ./logs)FASTTRANSFER_LOG_DIR=./logs
# Log level (default: INFO)LOG_LEVEL=INFO

Connection Options

The server supports multiple ways to authenticate and connect:

ParameterDescription
serverHost:port or host\instance (optional with connect_string or dsn)
user / passwordStandard credentials
trusted_authWindows trusted authentication
connect_stringFull connection string (excludes server/user/password/dsn)
dsnODBC DSN name (excludes server/provider)
providerOleDB provider name
file_inputFile path for data input (source only, excludes query)

Transfer Options

OptionCLI FlagDescription
method--methodParallelism method
distribute_key_column--distributeKeyColumnColumn for data distribution
degree--degreeParallelism degree (0=auto, >0=fixed, <0=CPU adaptive)
load_mode--loadmodeAppend or Truncate
batch_size--batchsizeBatch size for bulk operations
map_method--mapmethodColumn mapping: Position or Name
run_id--runidRun ID for logging
data_driven_query--datadrivenqueryCustom SQL for DataDriven method
use_work_tables--useworktablesIntermediate work tables for CCI
settings_file--settingsfileCustom settings JSON file
log_level--loglevelOverride log level (error/warning/information/debug/fatal)
no_banner--nobannerSuppress banner output
license_path--licenseLicense file path or URL

Usage Examples

PostgreSQL to SQL Server Transfer

User: "Copy the 'orders' table from PostgreSQL (localhost:5432, database: sales_db,       schema: public) to SQL Server (localhost:1433, database: warehouse, schema: dbo).       Use parallel transfer and truncate the target first."
Claude Code will:1. Call suggest_parallelism_method to recommend Ctid for PostgreSQL2. Call preview_transfer_command with your parameters3. Show the command with masked passwords4. Explain what will happen5. Ask for confirmation6. Execute with execute_transfer when you approve

File Import via DuckDB Stream

User: "Import /data/export.parquet into the SQL Server 'staging' table       using DuckDB stream."
Claude Code will use duckdbstream source type with file_input parameter.

Check Version and Capabilities

User: "What version of FastTransfer is installed?"
Claude Code will call get_version and display the detected version,supported source/target types, and available features.

Two-Step Safety Process

This server implements a mandatory two-step process:

  1. Preview - Always use preview_transfer_command first
  2. Execute - Use execute_transfer with confirmation: true

You cannot execute without previewing first and confirming.

Security

  • Passwords and connection strings are masked in all output and logs
  • Sensitive flags masked: --sourcepassword, --targetpassword, --sourceconnectstring, --targetconnectstring, -x, -X, -g, -G
  • Use environment variables for sensitive configuration
  • Review commands carefully before executing
  • Use minimum required database permissions

Testing

Run the test suite:

bash
# Run all testspython -m pytest tests/ -v
# Run with coveragepython -m pytest tests/ --cov=src --cov-report=html

Project Structure

fasttransfer-mcp/  src/    __init__.py    server.py          # MCP server (tool definitions, handlers)    fasttransfer.py    # Command builder, executor, suggestions    validators.py      # Pydantic models, enums, validation    version.py         # Version detection and capabilities registry  tests/    __init__.py    test_command_builder.py    test_validators.py    test_version.py  .env.example  requirements.txt  CHANGELOG.md  README.md

License

This MCP server wrapper is provided as-is. FastTransfer itself is a separate product from Arpe.io.

Related Links

Source: README.md at commit 2fe3c73

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.6LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts