io.github.arpe-io/fasttransfer-mcp

Registre officiel Données et bases de données

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

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

PYPI package fasttransfer-mcp
Claude Code
claude mcp add fasttransfer-mcp -e 'FASTTRANSFER_PATH=<FASTTRANSFER_PATH>' -e 'FASTTRANSFER_TIMEOUT=<FASTTRANSFER_TIMEOUT>' -e 'FASTTRANSFER_LOG_DIR=<FASTTRANSFER_LOG_DIR>' -e 'LOG_LEVEL=<LOG_LEVEL>' -- uvx fasttransfer-mcp==0.1.6
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "fasttransfer-mcp": {
            "command": "uvx",
            "args": [
                "fasttransfer-mcp==0.1.6"
            ],
            "env": {
                "FASTTRANSFER_PATH": "<FASTTRANSFER_PATH>",
                "FASTTRANSFER_TIMEOUT": "<FASTTRANSFER_TIMEOUT>",
                "FASTTRANSFER_LOG_DIR": "<FASTTRANSFER_LOG_DIR>",
                "LOG_LEVEL": "<LOG_LEVEL>"
            }
        }
    }
}

Variables d'environnement

  • FASTTRANSFER_PATH Path to the FastTransfer binary (optional — server runs in preview-only mode without it)
  • FASTTRANSFER_TIMEOUT Execution timeout in seconds (default: 1800)
  • FASTTRANSFER_LOG_DIR Directory for execution logs (default: ./logs)
  • LOG_LEVEL Logging level: DEBUG, INFO, WARNING, ERROR (default: INFO)

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. FastTransfer MCP Server
  2. Overview
  3. MCP Tools
  4. Installation
  5. Configuration
  6. Connection Options
  7. Transfer Options
  8. Usage Examples
  9. Two-Step Safety Process
  10. Security
  11. Testing
  12. Project Structure
  13. License
  14. Related Links

FastTransfer MCP Server

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:
     cd /path/to/fasttransfer-mcp
  2. Install Python dependencies:
     pip install -r requirements.txt
  3. Configure environment:
     cp .env.example .env
     # Edit .env with your FastTransfer path
  4. Add to Claude Code configuration (~/.claude.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:

# 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 PostgreSQL
2. Call preview_transfer_command with your parameters
3. Show the command with masked passwords
4. Explain what will happen
5. Ask for confirmation
6. 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:

# Run all tests
python -m pytest tests/ -v

# Run with coverage
python -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.

Questions fréquentes

Qu'est-ce que io.github.arpe-io/fasttransfer-mcp ?

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

Comment installer io.github.arpe-io/fasttransfer-mcp ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add fasttransfer-mcp -e 'FASTTRANSFER_PATH=<FASTTRANSFER_PATH>' -e 'FASTTRANSFER_TIMEOUT=<FASTTRANSFER_TIMEOUT>' -e 'FASTTRANSFER_LOG_DIR=<FASTTRANSFER_LOG_DIR>' -e 'LOG_LEVEL=<LOG_LEVEL>' -- uvx fasttransfer-mcp==0.1.6. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.arpe-io/fasttransfer-mcp ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

io.github.arpe-io/fasttransfer-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.arpe-io/fasttransfer-mcp ?

Il est publié par arpe-io. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.