mcpField
F
fasttransfer-mcp

fasttransfer-mcp

ローカル
github.com/arpe-ioデータベース132 週間前に更新

fasttransfer-mcp について

fasttransfer-mcpは、データベース間のデータ移行に使うFastTransferをMCP経由で提供します。コマンドの事前確認と承認後の実行、パラメーター検証、接続情報のマスキングを備えています。

主な機能

  1. 01転送コマンドのプレビューと確認後の実行
  2. 02接続パラメーターとDB互換性の検証
  3. 03対応する転送元・転送先の一覧表示
  4. 04並列化方式の提案
  5. 05バージョンと機能の検出
  6. 06ログ内のパスワードと接続文字列のマスキング

活用シーン

  1. 01PostgreSQLからSQL Serverへのテーブル転送の確認
  2. 02ファイルデータのSQL Serverへの取り込み
  3. 03FastTransferのバージョンと対応機能の確認

MCP 対応

MCPクライアントに、FastTransferコマンドのプレビューと実行、接続パラメーターの検証、機能の照会、並列化方式の提案を提供します。実行には事前プレビューと確認が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"arpe-io-fasttransfer": {
"command": "uvx",
"args": [
"fasttransfer-mcp"
],
"env": {
"FASTTRANSFER_PATH": "<FASTTRANSFER_PATH>",
"FASTTRANSFER_TIMEOUT": "<FASTTRANSFER_TIMEOUT>",
"FASTTRANSFER_LOG_DIR": "<FASTTRANSFER_LOG_DIR>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
起動コマンドuvx fasttransfer-mcp
設定が必要な環境変数
FASTTRANSFER_PATHPath to the FastTransfer binary (optional — server runs in preview-only mode without it)
FASTTRANSFER_TIMEOUTExecution timeout in seconds (default: 1800)
FASTTRANSFER_LOG_DIRDirectory for execution logs (default: ./logs)
LOG_LEVELLogging level: DEBUG, INFO, WARNING, ERROR (default: INFO)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypifasttransfer-mcp0.1.6

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

FastTransfer MCP サーバー

PyPI License: MIT MCP Registry

さまざまなデータベースシステム間で効率的にデータを転送するための FastTransfer 機能を公開する Model Context Protocol (MCP) サーバーです。

概要

FastTransfer は、データベース間でデータを転送する高性能な CLI ツールです。この MCP サーバーは FastTransfer の機能をラップし、次の機能を提供します。

  • 安全性を最優先:実行前にコマンドをプレビューし、ユーザーの確認を必須とします
  • パスワードのマスキング:認証情報や接続文字列がログや出力に表示されることはありません
  • インテリジェントな検証:データベース固有の互換性チェックを含むパラメーター検証
  • スマートな提案:並列処理方式を自動的に推奨します
  • バージョン検出:機能レジストリを備えたバイナリバージョンの自動検出
  • 包括的なログ記録:タイムスタンプと結果を含む完全な実行ログ

MCP ツール

1. preview_transfer_command

FastTransfer コマンドを構築してプレビューします。実行はしません。パスワードをマスキングした正確なコマンドを表示します。必ず最初に使用してください。

2. execute_transfer

プレビュー済みのコマンドを実行します。安全機能として confirmation: true が必要です。

3. validate_connection

データベース接続パラメーターを検証します(パラメーターのみをチェックし、実際の接続はテストしません)。

4. list_supported_combinations

サポートされているすべてのソースからターゲットへのデータベースの組み合わせを一覧表示します。

5. suggest_parallelism_method

ソースデータベースの種類とテーブルの特性に基づいて、最適な並列処理方式を推奨します。

6. get_version

検出された FastTransfer バイナリのバージョン、サポートされている種類、機能フラグを報告します。

インストール

前提条件
  • Python 3.10 以降
  • FastTransfer バイナリ v0.16 以降(Arpe.io から入手)
  • Claude Code またはその他の MCP クライアント
セットアップ
  1. このリポジトリをクローンまたはダウンロードします:

    cd /path/to/fasttransfer-mcp
    
  2. Python の依存関係をインストールします:

    pip install -r requirements.txt
    
  3. 環境を設定します:

    cp .env.example .env
    # Edit .env with your FastTransfer path
    
  4. Claude Code の設定に追加します(~/.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. MCP サーバーを読み込むため、Claude Code を再起動します。

  6. インストールを確認します:

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

設定

環境変数

.env を編集して設定します。

# 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

接続オプション

サーバーでは、複数の認証方法と接続方法がサポートされています。

パラメーター説明
serverホスト:ポートまたはホスト\インスタンス(connect_string または dsn を指定する場合は省略可能)
user / password標準の認証情報
trusted_authWindows の信頼された認証
connect_string完全な接続文字列(server/user/password/dsn とは併用できません)
dsnODBC DSN 名(server/provider とは併用できません)
providerOleDB プロバイダー名
file_inputデータ入力用のファイルパス(ソースのみ。query とは併用できません)

転送オプション

オプションCLI フラグ説明
method--method並列処理方式
distribute_key_column--distributeKeyColumnデータ分散に使用する列
degree--degree並列処理の度合い(0=自動、>0=固定、<0=CPU に応じて調整)
load_mode--loadmode追加または切り捨て
batch_size--batchsize一括操作のバッチサイズ
map_method--mapmethod列のマッピング:位置または名前
run_id--runidログ記録用の実行 ID
data_driven_query--datadrivenqueryDataDriven 方式用のカスタム SQL
use_work_tables--useworktablesCCI 用の中間作業テーブル
settings_file--settingsfileカスタム設定 JSON ファイル
log_level--loglevelログレベルを上書き(error/warning/information/debug/fatal)
no_banner--nobannerバナー出力を抑制
license_path--licenseライセンスファイルのパスまたは URL

使用例

PostgreSQL から SQL Server への転送
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
DuckDB ストリーム経由でファイルをインポート
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.
バージョンと機能を確認
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.

2 段階の安全プロセス

このサーバーでは、次の 2 段階のプロセスが必須です。

  1. プレビュー - 必ず最初に preview_transfer_command を使用します
  2. 実行 - confirmation: true を指定して execute_transfer を使用します

最初にプレビューして確認しなければ、実行できません。

セキュリティ

  • すべての出力とログで、パスワードと接続文字列はマスキングされます
  • 機密性の高いフラグはマスキングされます:--sourcepassword、--targetpassword、--sourceconnectstring、--targetconnectstring、-x、-X、-g、-G
  • 機密性の高い設定には環境変数を使用してください
  • 実行前にコマンドを注意深く確認してください
  • 必要最小限のデータベース権限を使用してください

テスト

テストスイートを実行します。

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

# Run with coverage
python -m pytest tests/ --cov=src --cov-report=html

プロジェクト構成

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

ライセンス

この MCP サーバーラッパーは現状有姿で提供されます。FastTransfer は Arpe.io の別個の製品です。

関連リンク

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。