Token导航 LogoToken导航TokenDH.com
Fastbcp MCP logo
数据服务stdio官方级别未说明来源级核验

Fastbcp MCP

MCP Server

基于Model Context Protocol (MCP)的服务器,提供从数据库高效导出数据到多种文件格式(CSV, TSV, JSON, BSON, Parquet, XLSX, Binary)并支持云存储目标的功能。

工具数

6

提示词数

0

GitHub Stars

1

资源数

0
PythonClaude数据分析Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

arpe-io

提供方

arpe-io

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

FastBCP MCP服务器

![PyPI](https://pypi.org/project/fastbcp-mcp/) ![License: MIT](https://opensource.org/licenses/MIT) ![MCP Registry](https://registry.modelcontextprotocol.io/?q=arpe-io)

A. 模型上下文协议(MCP) 暴露的服务器 FastBCP 将数据从数据库导出到文件(CSV、TSV、JSON、BSON、Parquet、XLSX、Binary)的功能,并具有可选的云存储目标。

概述

FastBCP是一个高性能的CLI工具,用于将数据从数据库导出到文件。此MCP服务器封装了FastBCP功能,并提供:

  • 安全第一方针:执行前预览命令,需要用户确认
  • 密码屏蔽:凭据和连接字符串从不显示在日志或输出中
  • 智能验证:通过数据库特定兼容性检查进行参数验证
  • 聪明的建议:自动并行方法建议
  • 版本检测:使用功能注册表自动检测二进制版本
  • 综合录井:带有时间戳和结果的完整执行日志

MCP工具

1. preview_export_command

无需执行即可构建和预览FastBCP导出命令。显示密码被屏蔽的确切命令。总是先用这个。

2. execute_export

执行之前预览的命令。需要 confirmation: true 作为一种安全机制。

3. validate_connection

验证源数据库连接参数(仅用于参数检查,不测试实际连接)。

4. list_supported_formats

列出所有支持的源数据库、输出格式和存储目标。

5. suggest_parallelism_method

推荐基于源数据库类型和表特征的最佳并行方法。

6. get_version

报告检测到的FastBCP二进制版本、支持的类型和功能标志。

安装

先决条件

  • Python 3.10或更高版本
  • FastBCP二进制v0.29+(从 Arpe.io)
  • Claude Code或其他MCP客户端

设置

  1. 克隆或下载此存储库:
   cd /path/to/fastbcp-mcp
  1. 安装Python依赖项:
   pip install -r requirements.txt
  1. 配置环境:
   cp .env.example .env
   # Edit .env with your FastBCP path
  1. 添加到Claude代码配置 (~/.claude.json):
   {
     "mcpServers": {
       "fastbcp": {
         "type": "stdio",
         "command": "python",
         "args": ["/absolute/path/to/fastbcp-mcp/src/server.py"],
         "env": {
           "FASTBCP_PATH": "/absolute/path/to/FastBCP"
         }
       }
     }
   }
  1. 重新启动Claude代码 加载MCP服务器。
  1. 验证安装:
   # In Claude Code, run:
   /mcp
   # You should see "fastbcp: connected"

配置

环境变量

编辑 .env 配置:

# 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=INFO

连接选项

服务器支持多种身份验证和连接方式:

参数说明
server主机:端口或主机\\实例(可选 connect_stringdsn)
user / password标准证书
trusted_authWindows可信身份验证
connect_string完整连接字符串(不包括服务器/用户/密码/dsn)
dsnODBC DSN名称(不包括服务器/提供程序)
providerOleDB提供程序名称
application_intentSQL Server应用程序意图(只读/读写)

输出选项

选项CLI标志说明
format--format输出格式:csv、tsv、json、bson、拼花、xlsx、二进制
file_output--fileoutput输出文件路径
directory--directory输出目录路径
storage_target--storagetarget存储:本地、s3、s3兼容、azure_blob、azure_datalake、fabric_onelake
delimiter--delimiter字段分隔符(CSV/TSV)
quotes--quotes引用字符
encoding--encoding输出编码
no_header--noheader省略标题行(CSV/TSV)
decimal_separator--decimalseparator小数分隔符(.or,)
date_format--dateformat日期格式字符串
bool_format--boolformat布尔格式:TrueFalse、OneZero、YesNo
parquet_compression--parquetcompression拼花压缩:无、Snappy、Gzip、Lz4、Lzo、Zstd
timestamped--timestamped在输出文件名中添加时间戳
merge--merge合并并行输出文件

导出选项

选项CLI标志说明
method--method平行法
distribute_key_column--distributeKeyColumn数据分发栏
degree--degree平行度(默认值:1)
load_mode--loadmode追加或截断
batch_size--batchsize出口操作的批量大小
map_method--mapmethod列映射:位置或名称
run_id--runid日志记录的运行ID
data_driven_query--datadrivenquery数据驱动方法的自定义SQL
settings_file--settingsfile自定义设置JSON文件
log_level--loglevel覆盖日志级别(信息/调试)
no_banner--nobanner抑制横幅输出
license_path--license许可证文件路径或URL
cloud_profile--cloudprofile云存储配置文件名称

使用示例

PostgreSQL到CSV导出

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 approve

导出到压缩拼花地板

User: "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.

导出到S3

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.

两步安全流程

此服务器实现了一个强制性的两步过程:

  1. 预览 -始终使用 preview_export_command 第一
  2. 执行 -使用 execute_export 随着 confirmation: true

如果不先预览并确认,则无法执行。

安全

  • 密码和连接字符串在所有输出和日志中都被屏蔽
  • 隐藏的敏感标志: --sourcepassword, --sourceconnectstring, -x, -g
  • 使用环境变量进行敏感配置
  • 执行前仔细检查命令
  • 使用所需的最低数据库权限

测试

运行测试套件:

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

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

项目结构

fastbcp-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.md

许可证

此MCP服务器包装器按原样提供。FastBCP本身是Arpe.io的独立产品。

相关链接

目录标签

目录标签

PythonClaude数据分析数据库导出本地部署数据转换云存储集成高性能工具安全数据传输

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP