
Dataset Diff & Change Detector
io.github.Nero-Enginev0.1.0更新於 Oct 10, 2026
Compare two versions of a JSON row list: what was added, removed or changed, field by field.
概覽
比較同一份 JSON 資料列清單的兩個版本,逐欄位回報哪些資料列被新增、刪除或修改。
- 功能
- 提供 diff_rows 工具,接收變更前快照(oldRows)與變更後快照(newRows),依一個或多個鍵欄位(例如 sku、id)配對資料列,並比較除 ignoreFields 以外的所有欄位,或只比較指定的 compareFields。它會針對每筆差異回傳 status、key、oldValues、newValues 與 changedFields,並附上新增、刪除、修改與未變更資料列的彙總計數。list_capabilities 工具說明配對與比較規則、輸出結構與資料列上限,且不處理資料。比較是精確的,因此文字與數字、大小寫或空白差異,以及 null 變成具體值,都會算作變更。
- 適用情境
- 適合需要比較同一份資料集兩份匯出檔的情境,例如昨天與今天的價格表、兩份商品資料來源,或兩份 CRM 匯出,並精確回報變動內容。適用於中小規模的資料列清單,需要精確到欄位的變更報告,而非模糊比對時。
- 執行需求
- 遠端 streamable HTTP 端點;未宣告需要安裝、API 金鑰或註冊。用戶端連線至伺服器 URL 即可。每次呼叫 oldRows 與 newRows 合計最多 500 列;更大的清單需拆分多次呼叫,並確保每次呼叫兩側使用相同的鍵範圍。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Dataset Diff & Change Detector,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
其他 MCP 客戶端
把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"dataset-diff-detector": {
"type": "http",
"url": "https://dataset-diff-detector.nerolabs.workers.dev/mcp"
}
}
}README
Dataset Diff & Change Detector (Remote MCP Server)
Compare two versions of the same list of JSON rows and get exactly what changed. Hand it yesterday's price list and today's, last week's product feed and this week's, or two exports of the same CRM, name the field that identifies a row, and it tells you which rows were added, removed or changed, down to which fields moved on each one.
Built for AI agents. No install, no API key, no signup. Connect by URL and call it.
Free to use while in early access.
What it does
One call compares a before snapshot (oldRows) with an after snapshot (newRows):
- Matches rows across the two sides on
keyFields, such assku,idoremail(one field or several). Without a key it matches on full row content, so an edited row shows as one removed row plus one added row. - Compares every field on each matched pair, minus any
ignoreFields(timestamps that always differ), or only thecompareFieldsyou name. - Returns one row per difference with its
status,key,oldValues,newValuesandchangedFields, plus a summary counting added, removed, changed and unchanged rows. Turn onincludeUnchangedto get the unchanged rows back too.
Comparison is exact, so nothing is quietly glossed over: "24.99" as text and 24.99 as a number count as a change, as do "Blue" and "blue ", and null becoming a value. Nested objects compare by value, whatever order their keys are in.
It is honest about messy input. The summary warns when a key value appears twice on one side (the last row is kept and the count is reported), when rows have no key field at all, and when a field you named appears in no row, which is usually a typo.
Tools
Connect
Claude Code
Claude Desktop / claude.ai: Settings, Connectors, Add custom connector, paste the URL above.
Cursor, Windsurf, VS Code and other MCP clients
Example
Yesterday's and today's price list go in, with the scrape timestamp ignored:
Five differences come out. A105 was removed, A106 was added, A100 changed price and stock, A101's price turned from text into a number, and A104 gained a discount. A102 matched exactly and is counted as unchanged:
Removed rows come first, then changed rows in the order of oldRows, then added rows in the order of newRows.
Limits
Up to 500 rows per call, oldRows and newRows combined. For bigger lists, split them across several calls and keep the same key range on both sides of each call (for example SKUs A to M in one call, N to Z in the next), otherwise a row in one call looks removed while its match in another looks added. Anything larger returns a clear message rather than failing silently.
Privacy
Your rows are processed in memory and never stored. To see which tools get used, each call records the tool name, row counts, whether it succeeded, the client name your app reports, the country and a one-way hashed caller ID. Your data, your arguments and your IP address are never kept in that log.
Also available
The same engine runs on the Apify Store as Dataset Diff & Change Detector, which adds "since last run" snapshot mode (name a comparison and every run reports only what changed since the previous one, so you never supply the old side again), reads Apify datasets, CSV, Excel and JSON files and Google Sheets on either side, compares up to 100,000 rows a run, exports a CSV or Excel diff report, keeps a running change log in a named dataset, and posts each result to a webhook.
Built by Nero Labs.
來源:README.md,提交 a12ca03
工具
0版本歷史
1- v0.1.0最新Sep 16, 2026
