Dataset Filter & Transform について
Dataset Filter & Transformは、JSON行を整形するAIエージェント向けのリモートMCPサーバーです。変換、フィルタリング、ソート、重複排除を一つの処理にまとめ、除外内容や変換上の問題も報告します。
主な機能
- 0126種類の行変換
- 0225種類のフィルター演算子
- 03行のソートと重複排除
- 04オフセットと件数制限
- 05除外行とエラーの報告
活用シーン
- 01スクレイピングデータの整形
- 02計算したフィールドによるAPI結果の絞り込み
- 03分析前の重複行の削除
MCP 対応
リモートHTTPエンドポイントを通じて、MCPクライアントに `list_capabilities` と `process_rows` を提供します。クライアントはJSON行と処理条件を送り、残った行と処理概要を受け取ります。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://dataset-filter-transform.nerolabs.workers.dev/mcpclaude mcp add --transport http nero-engine-dataset-filter-transform https://dataset-filter-transform.nerolabs.workers.dev/mcp{"mcpServers":{"nero-engine-dataset-filter-transform":{"type":"http","url":"https://dataset-filter-transform.nerolabs.workers.dev/mcp"}}}Cursor で開く{"servers":{"nero-engine-dataset-filter-transform":{"type":"http","url":"https://dataset-filter-transform.nerolabs.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"nero-engine-dataset-filter-transform":{"type":"http","url":"https://dataset-filter-transform.nerolabs.workers.dev/mcp"}}}{"mcpServers":{"nero-engine-dataset-filter-transform":{"serverUrl":"https://dataset-filter-transform.nerolabs.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
2このツールにパラメーターはありません。
詳細
データセットのフィルタリングと変換(リモート MCP サーバー)
乱雑な JSON 行を、1 回のツール呼び出しでクリーンアップし、フィルタリングして整形できます。 スクレイパー、API、スプレッドシートから取得した行のリストを渡し、どのように整形し、どの行を残すかを指定すると、クリーンな行と、削除した行およびその理由の正確な内訳が返されます。
AI エージェント向けに構築されています。インストール、API キー、サインアップは不要です。URL で接続して呼び出すだけです。
https://dataset-filter-transform.nerolabs.workers.dev/mcp
早期アクセス期間中は無料でご利用いただけます。
機能
1 回の呼び出しで、次の順序で一連の処理を実行します。
- 変換:すべての行について、フィールドの名前変更、削除または保持、トリミング、大文字・小文字の変更、文字列から数値への型変換、算術演算による新しいフィールドの計算、正規表現による抽出、分割、置換、日付の書式設定、日付間隔の測定、メールアドレスまたは URL からのドメイン抽出、ハッシュ化、値のマッピング、JSON の解析などを行います(26 種類の操作)。
- フィルタリング:不要な行を除外します。等しい、含む、で始まる、より大きい、範囲内、空である、正規表現に一致する、リスト内にある、配列に含まれる、指定日より前または後、過去 N 日以内などの条件を、AND または OR で組み合わせられます(25 種類の演算子)。
- ソート、任意のフィールドによる重複排除、オフセット/上限設定。
変換はフィルタリングより先に実行されるため、フィールドを作成し、同じ呼び出しでそのフィールドを使ってフィルタリングできます。
処理できなかった内容も正直に報告します。たとえば、"not a price" のような値を数値に変換できない場合、推測して処理することはありません。サマリーに cast:price: 1 と報告されます。
ツール
| ツール | 機能 |
|---|---|
list_capabilities | すべての変換操作とフィルター演算子、処理順序、行数の上限を一覧表示します。データは処理しません。 |
process_rows | 渡された行に一連の処理を実行し、残った行とサマリーを返します。 |
接続
Claude Code
claude mcp add --transport http dataset-filter-transform https://dataset-filter-transform.nerolabs.workers.dev/mcp
Claude Desktop/claude.ai:「設定」から「コネクター」、「カスタムコネクターを追加」の順に選択し、上記の URL を貼り付けます。
Cursor、Windsurf、VS Code、その他の MCP クライアント
{
"mcpServers": {
"dataset-filter-transform": {
"url": "https://dataset-filter-transform.nerolabs.workers.dev/mcp"
}
}
}
例
乱雑なリード行を 5 件入力します。
{
"rows": [
{"company": " Acme Ltd ", "e_mail": "[email protected]", "price": "$1,234.50", "qty": "3", "country": "uk"},
{"company": "Beta Systems", "e_mail": "[email protected]", "price": "49 USD", "qty": "1", "country": "UK"},
{"company": "Gamma GmbH", "e_mail": "[email protected]", "price": "€900", "qty": "2", "country": "DE"},
{"company": "Acme Ltd", "e_mail": "[email protected]", "price": "$1,234.50", "qty": "3", "country": "UK"},
{"company": "Delta Co", "e_mail": "", "price": "not a price", "qty": "5", "country": "UK"}
],
"transforms": [
{"op": "trim", "field": "company"},
{"op": "rename", "from": "e_mail", "to": "email"},
{"op": "lowercase", "field": "email"},
{"op": "cast", "field": "price", "to": "number"},
{"op": "cast", "field": "qty", "to": "number"},
{"op": "compute", "field": "orderValue", "expression": "price * qty", "round": 2},
{"op": "extractDomain", "field": "email", "into": "domain"}
],
"filters": [
{"field": "country", "operator": "equals", "value": "UK"},
{"field": "orderValue", "operator": "greaterThan", "value": 100}
],
"sortBy": [{"field": "orderValue", "direction": "desc"}],
"distinctBy": ["domain"]
}
クリーンな行が 1 件出力され、残りの 4 件が除外された理由の正確なサマリーも表示されます。
{
"rows": [
{"company": "Acme Ltd", "price": 1234.5, "qty": 3, "country": "uk", "email": "[email protected]", "orderValue": 3703.5, "domain": "acme.co.uk"}
],
"summary": {
"inputRowCount": 5,
"keptRowCount": 1,
"excludedByFilter": 3,
"duplicatesRemoved": 1,
"transformIssues": {"cast:price": 1, "compute:orderValue": 1, "extractDomain:email": 1}
}
}
テキストの照合では、デフォルトで大文字と小文字が区別されません。また、"$1,234.50"、"49 USD"、"12%" のような値は、無効にしない限り数値として読み取られます。
制限
1 回の呼び出しにつき最大 500 行です。これより大きなリストは、複数回に分けて処理してください。上限を超えた場合は、黙って失敗するのではなく、明確なメッセージが返されます。
プライバシー
行はメモリ上で処理され、保存されることはありません。どのツールが使われているかを確認できるよう、各呼び出しについて、ツール名、行数、成功したかどうか、アプリが報告するクライアント名、国、そして一方向ハッシュ化された呼び出し元 ID が記録されます。データ、引数、IP アドレスがそのログに保存されることはありません。
こちらでも利用できます
同じエンジンは Apify Store の Dataset Filter & Transform としても提供されており、Apify データセット、CSV ファイル、Excel ファイル、Google Sheets の読み込みと、CSV または Excel へのエクスポートにも対応しています。
Nero Labs が開発しました。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。