用途:作为 MCP 服务器执行 SQL 查询,并通过 ConnectorX 把结果流式写入 CSV 或 Parquet 文件,避免在 MCP 通信中直接传输大体积数据。
主要能力:支持 CSV(UTF-8,始终写表头)与 Parquet(PyArrow 默认设置,批次间 schema 不一致会报错)两种输出格式。结果按 Arrow RecordBatch 分块流式读取,默认 batch_size 为 100000 行。空结果时 CSV 生成空文件、Parquet 写入空表。执行失败时返回 Error: <message> 并删除已部分写入的输出文件。可选 CSV 逐行 token 统计,使用 tiktoken(o200k_base),可设置告警阈值。
使用方式:作为 MCP 工具暴露单个 run_sql。以 --conn <connection_token>(必填)指定 ConnectorX 连接令牌,支持 SQLite、PostgreSQL、BigQuery 等;--csv-token-threshold <int>(默认 0)大于 0 时启用 CSV 逐行 token 统计并作为告警阈值。可在支持 MCP 的客户端(如 Cursor)中通过项目根目录 .cursor/mcp.json 启动。连接令牌格式与完整数据库支持列表参见 ConnectorX 官方文档。
返回值:成功时返回字符串 OK;启用 CSV token 统计时可能返回 OK N tokens,N 达到阈值时附带提示;空结果且启用统计时为 OK 0 tokens。
限制:仅支持 CSV 或 Parquet 输出;Parquet 批次间 schema 必须一致;未提供的信息暂未提供,例如具体收费、部署方式与各数据库连接的完整参数细节需查阅 ConnectorX 文档。