Fastbcp Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Fastbcp Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<!-- mcp-name: io.github.arpe-io/fastbcp-mcp -->
A Model Context Protocol (MCP) server that exposes FastBCP functionality for exporting data from databases to files (CSV, TSV, JSON, BSON, Parquet, XLSX, Binary) with optional cloud storage targets.
FastBCP is a high-performance CLI tool for exporting data from databases to files. This MCP server wraps FastBCP functionality and provides:
preview_export_commandBuild and preview a FastBCP export command WITHOUT executing it. Shows the exact command with passwords masked. Always use this first.
execute_exportExecute a previously previewed command. Requires confirmation: true as a safety mechanism.
validate_connectionValidate source database connection parameters (parameter check only, does not test actual connectivity).
list_supported_formatsList all supported source databases, output formats, and storage targets.
suggest_parallelism_methodRecommend the optimal parallelism method based on source database type and table characteristics.
get_versionReport the detected FastBCP binary version, supported types, and feature flags.
cd /path/to/fastbcp-mcp pip install -r requirements.txt cp .env.example .env
# Edit .env with your FastBCP path~/.claude.json): {
"mcpServers": {
"fastbcp": {
"type": "stdio",
"command": "python",
"args": ["/absolute/path/to/fastbcp-mcp/src/server.py"],
"env": {
"FASTBCP_PATH": "/absolute/path/to/FastBCP"
}
}
}
} # In Claude Code, run:
/mcp
# You should see "fastbcp: connected"Edit .env to configure:
# Path to FastBCP binary (required)
FASTBCP_PATH=./fastbcp/FastBCP
# Execution timeout in seconds (default: 1800 = 30 minutes)
FASTBCP_TIMEOUT=1800
# Log directory (default: ./logs)
FASTBCP_LOG_DIR=./logs
# Log level (default: INFO)
LOG_LEVEL=INFOThe server supports multiple ways to authenticate and connect:
| Parameter | Description |
|---|---|
server | Host:port or host\instance (optional with connect_string or dsn) |
user / password | Standard credentials |
trusted_auth | Windows trusted authentication |
connect_string | Full connection string (excludes server/user/password/dsn) |
dsn | ODBC DSN name (excludes server/provider) |
provider | OleDB provider name |
application_intent | SQL Server application intent (ReadOnly/ReadWrite) |
| Option | CLI Flag | Description |
|---|---|---|
format | --format | Output format: csv, tsv, json, bson, parquet, xlsx, binary |
file_output | --fileoutput | Output file path |
directory | --directory | Output directory path |
storage_target | --storagetarget | Storage: local, s3, s3compatible, azure_blob, azure_datalake, fabric_onelake |
delimiter | --delimiter | Field delimiter (CSV/TSV) |
quotes | --quotes | Quote character |
encoding | --encoding | Output encoding |
no_header | --noheader | Omit header row (CSV/TSV) |
decimal_separator | --decimalseparator | Decimal separator (. or ,) |
date_format | --dateformat | Date format string |
bool_format | --boolformat | Boolean format: TrueFalse, OneZero, YesNo |
parquet_compression | --parquetcompression | Parquet compression: None, Snappy, Gzip, Lz4, Lzo, Zstd |
timestamped | --timestamped | Add timestamp to output filename |
merge | --merge | Merge parallel output files |
| Option | CLI Flag | Description |
|---|---|---|
method | --method | Parallelism method |
distribute_key_column | --distributeKeyColumn | Column for data distribution |
degree | --degree | Parallelism degree (default: 1) |
load_mode | --loadmode | Append or Truncate |
batch_size | --batchsize | Batch size for export operations |
map_method | --mapmethod | Column mapping: Position or Name |
run_id | --runid | Run ID for logging |
data_driven_query | --datadrivenquery | Custom SQL for DataDriven method |
settings_file | --settingsfile | Custom settings JSON file |
log_level | --loglevel | Override log level (Information/Debug) |
no_banner | --nobanner | Suppress banner output |
license_path | --license | License file path or URL |
cloud_profile | --cloudprofile | Cloud storage profile name |
User: "Export the 'orders' table from PostgreSQL (localhost:5432, database: sales_db,
schema: public) to CSV file at /tmp/orders.csv. Use parallel export."
Claude Code will:
1. Call suggest_parallelism_method to recommend Ctid for PostgreSQL
2. Call preview_export_command with your parameters
3. Show the command with masked passwords
4. Explain what will happen
5. Ask for confirmation
6. Execute with execute_export when you approveUser: "Export the 'transactions' table from SQL Server to Parquet format
with Snappy compression, saved to /data/exports/."
Claude Code will use parquet format with parquet_compression set to Snappy.User: "Export the 'users' table from PostgreSQL to CSV on S3 bucket
s3://my-bucket/exports/ using my AWS profile."
Claude Code will use storage_target=s3 with cloud_profile.User: "What version of FastBCP is installed?"
Claude Code will call get_version and display the detected version,
supported source types, output formats, and available features.This server implements a mandatory two-step process:
preview_export_command firstexecute_export with confirmation: trueYou cannot execute without previewing first and confirming.
--sourcepassword, --sourceconnectstring, -x, -gRun the test suite:
# Run all tests
python -m pytest tests/ -v
# Run with coverage
python -m pytest tests/ --cov=src --cov-report=htmlfastbcp-mcp/
src/
__init__.py
server.py # MCP server (tool definitions, handlers)
fastbcp.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.mdThis MCP server wrapper is provided as-is. FastBCP itself is a separate product from Arpe.io.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.