connect_source
Register a data source (CSV file, Postgres database, or REST API). Credentials must be in environment variables or a YAML config file — never pass connection strings directly.
urlname必填pathtype必填source_config_path
io.github.dbsectrainer由 GitHub 帳號 dbsectrainer 發布v1.0.1更新於 Nov 4, 2026
Universal data connector for CSV, Postgres, and REST APIs via DuckDB
本機 MCP 伺服器,可註冊 CSV 檔案、PostgreSQL 資料庫與 REST API,讓助理透過內嵌 DuckDB 以 SQL 查詢與轉換這些資料。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
參照 儲存庫 中的啟動說明。
npm mcp-data-pipeline-connector package
One MCP server for all your data sources — with cross-source SQL joins and no external query service. DuckDB runs embedded in-process, so you can join a CSV file against a Postgres table against a REST API response in a single query, entirely on your machine. Agents work with your data without needing source-specific knowledge or multiple MCP server configs.
Tool reference | Configuration | Contributing | Troubleshooting
The common alternative is running one MCP server per data source — a postgres MCP server, a CSV MCP server, a REST MCP server. Each works fine in isolation, but they can't talk to each other.
If you're asking questions that span multiple data sources — "join my sales CSV with the users table" — this is the right tool. If you only ever query one source type, a dedicated single-source server is simpler.
mcp-data-pipeline-connector connects to data sources you configure and executes queries against them on behalf of your agent. Ensure agents only have the database permissions they need. Connection strings are never logged or transmitted; keep them out of version-controlled config files. Use environment variables for credentials.
Add the following config to your MCP client:
Define your data sources in ~/.mcp/data-sources.yaml:
Store connection strings in environment variables, not directly in the YAML file.
Amp · Claude Code · Cline · Cursor · VS Code · Windsurf · Zed
Place a CSV file at ~/data/sample.csv, add it as a source in your config, then enter:
Your client should return the schema and a preview of the data.
connect_sourcelist_sourceslist_tablesget_schemaquerytransformcheck_health--config / --sources-configPath to the YAML file defining data sources.
Type: string
Default: ~/.mcp/data-sources.yaml
--rest-cache-ttlTime-to-live in seconds for cached REST API responses. Set to 0 to disable caching.
Type: number
Default: 300
--max-rowsMaximum number of rows returned by a single query call. Prevents accidental large result sets.
Type: number
Default: 1000
--read-onlyReject any SQL statements that are not SELECT queries. Enforces read-only access across all sources.
Type: boolean
Default: true
Pass flags via the args property in your JSON config:
Before publishing a new version, verify the server with MCP Inspector to confirm all tools are exposed correctly and the protocol handshake succeeds.
Interactive UI (opens browser):
CLI mode (scripted / CI-friendly):
Run before publishing to catch regressions in tool registration and runtime startup.
Each connector lives in src/connectors/ and must implement the DataConnector interface. Add fixture data files under tests/fixtures/ for integration tests. Never log connection strings or credentials — sanitize before any output or error message.
mcp-data-pipeline-connector is listed on MCP Registry and MCP Market.
check_health to retest after startup.source='_all'.truncated: true: Increase --max-rows or add a LIMIT clause to your SQL.來源:README.md,提交 6914478
Register a data source (CSV file, Postgres database, or REST API). Credentials must be in environment variables or a YAML config file — never pass connection strings directly.
urlname必填pathtype必填source_config_pathList all registered data sources and their connection status.
無需輸入參數。
List available tables across all sources, or just the named source.
sourceReturn the column names and types for a specific table.
table必填source必填Execute a SQL query against a registered data source using DuckDB. Returns up to --max-rows rows (default 1000). In read-only mode (default), only SELECT statements are allowed. Use source='_all' to query across all CSV sources with cross-source joins. Supports limit and offset for pagination.
sql必填limitoffsetsourcesourcesmax_rowsApply aggregations, filters, renaming, or column selection to a source table and return or save results.
table必填source必填operations必填output_formatCheck whether registered data sources are still reachable and responsive.
source已滿足適用檢查項的 90%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
{ "mcpServers": { "data-connector": { "command": "npx", "args": ["-y", "mcp-data-pipeline-connector@latest"] } }}sources: - name: sales type: csv path: ~/data/sales-2025.csv - name: users type: postgres connection_string: "${POSTGRES_URL}" tables: [users, subscriptions]What columns are in the sample table? Show me the first 5 rows.{ "mcpServers": { "data-connector": { "command": "npx", "args": ["-y", "mcp-data-pipeline-connector@latest", "--max-rows=5000", "--rest-cache-ttl=60"] } }}npm run build && npm run inspect# List all toolsnpx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/list
# List resources and promptsnpx @modelcontextprotocol/inspector --cli node dist/index.js --method resources/listnpx @modelcontextprotocol/inspector --cli node dist/index.js --method prompts/list
# Call a tool (example — replace with a relevant read-only tool for this plugin)npx @modelcontextprotocol/inspector --cli node dist/index.js \ --method tools/call --tool-name list_sources
# Call a tool with argumentsnpx @modelcontextprotocol/inspector --cli node dist/index.js \ --method tools/call --tool-name list_sources --tool-arg key=valuenpm install && npm test