Pipetable

io.github.melihbirim由 GitHub 帳號 melihbirim 發布v0.7.2更新於 Nov 7, 2026

Local data runtime for AI agents: query CSV, Excel, Parquet and JSON files with DuckDB SQL.

概覽

AI 產生的概覽

本機 MCP 伺服器,讓 AI 助理註冊存放 CSV、Parquet、JSON、TSV 或 Excel 檔案的資料夾,並以真正的 DuckDB SQL 查詢這些資料。

可以做什麼
  • 掃描資料夾並註冊其中的資料檔案,列出資料集及其結構與欄位型別
  • 檢視特定資料表的詳細資訊,包含欄位與範例列
  • 對已註冊的檔案執行 DuckDB SQL,取得真實查詢結果而非模型生成的內容
  • 可選擇以自然語言提問,先轉成 SQL 再執行
適用情境
適合助理需要根據本機表格資料檔案回答問題,且你希望得到精確的 SQL 結果而非猜測時使用,例如在自己的電腦上探索一批匯出檔或試算表。
執行需求
以本機 stdio 程序執行,可透過 cargo 或安裝腳本安裝;使用 SQL 與 MCP 不需帳號或 API 金鑰。自然語言查詢為選用功能,需 ANTHROPIC_API_KEY、OPENAI_API_KEY(可搭配 OPENAI_BASE_URL)或本機 Ollama 其中之一。支援最大 2GB 的檔案,資料夾最多掃描三層。
安裝前請注意
助理可對你註冊資料夾中的檔案執行任意 SQL,因此只應指向你願意讓模型接觸的資料。若啟用雲端服務供應商的自然語言模式,你的問題與可能的結構資訊會傳送給該供應商;使用 Ollama 則維持在本機。安裝說明會把遠端腳本直接交給 shell 執行,建議先檢視或改用 cargo 安裝。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Pipetable,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Pipetable

The local data runtime for AI agents.

[Pipetable demo] Point it at a folder of CSV, Parquet, JSON, or TSV files — your AI can now query them with real SQL instead of hallucinating.

Works as an MCP server for Claude Code, Cursor, RooCode, and Copilot. Also ships as a standalone CLI for interactive data exploration. Powered by DuckDB. Files never leave your machine.

MIT licensed.

Install

sh
# macOS / Linuxcurl -fsSL https://pipetable.com/install | sh
# Windowsirm https://pipetable.com/install.ps1 | iex
# Rustcargo install pipetable

MCP server setup

Claude Code

sh
claude mcp add pipetable pipetable mcp

Cursor / RooCode

json
{  "mcpServers": {    "pipetable": {      "command": "pipetable",      "args": ["mcp"]    }  }}

VS Code (Copilot)

json
{  "servers": {    "pipetable": {      "type": "stdio",      "command": "pipetable",      "args": ["mcp"]    }  }}

Once configured, your AI can:

  1. scan_folder — register all data files in a folder
  2. list_datasets — see schemas and column types
  3. get_schema — inspect a specific table with sample rows
  4. execute_sql — run real DuckDB SQL against your files

Results are ground truth from DuckDB, not generated.

CLI

sh
pipetable ~/data/

SQL and natural language at the > prompt. SQL always works. Natural language requires Ollama running locally.

> SELECT region, SUM(revenue) AS total FROM sales GROUP BY 1 ORDER BY 2 DESC
4 row(s)
region  total─────────────EU      141000US       32000APAC     17000
> show me top 5 customers by revenueUsing: customers, salesThinking.....SELECT c.name, SUM(s.revenue) AS total FROM customers cJOIN sales s ON s.customer_id = c.idGROUP BY c.name ORDER BY total DESC LIMIT 5...→ piped as _last

Piping results

Every query saves its result as _last — a live DuckDB view you can query further:

> SELECT * FROM sales WHERE region = 'EU'...→ piped as _last
> show me top 3 from _lastUsing: _lastThinking.....

Dot commands

CommandDescription
.scan <path>Load a folder or file (Tab completes)
.datasetsList loaded datasets
.schema <name>Columns + sample rows
.drop <name>Remove a dataset from the session
.use <n1> <n2>Focus NL queries on specific datasets
.remove <name>Remove from focus
.clearReset focus to all datasets
.model <name>Switch Ollama model
.helpShow help

Tab completes dataset names after FROM, JOIN, .schema, .drop, .use.

One-shot query

sh
pipetable ask "who has the highest revenue?" ~/data/pipetable ask "SELECT * FROM sales LIMIT 5" ~/data/

Natural language (optional)

Set any one of these — pipetable auto-detects:

sh
# Claude (best quality)export ANTHROPIC_API_KEY=sk-ant-...
# OpenAI or any compatible API (LM Studio, Groq, Together, etc.)export OPENAI_API_KEY=sk-...export OPENAI_BASE_URL=http://localhost:1234  # optional, for local endpoints
# Ollama (local, no key needed)ollama pull qwen2.5-coder:1.5bollama serve

Priority: Anthropic → OpenAI-compatible → Ollama. SQL and MCP work without any of them.

Supported formats

CSV, Parquet, JSON, NDJSON, TSV, Excel (xlsx, xls, xlsm). Files up to 2GB. Folders scanned up to 3 levels deep. Hidden files and common noise directories (node_modules, target, .git) are skipped automatically.

License

MIT

  • MCP Registry name: mcp-name: io.github.melihbirim/pipetable

來源:README.md,提交 245d1d4

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:該軟體包類型無法在沙箱中執行。

版本歷史

1
  1. v0.7.2最新Oct 31, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分