RemoveDuplicates.org について
RemoveDuplicates.org は、貼り付けた表データや CSV/TSV を含むテキストから、重複行や表の行を除去するステートレスなツールです。ホスト型 MCP サーバーは各リクエストをメモリ内で処理し、結果と件数を返します。
主な機能
- 01テキスト行と表の行の重複除去
- 02比較列とヘッダーの指定
- 03大文字小文字・空白・順序の設定
- 04結果テキストと件数の返却
- 05MCP リクエストを保存せず処理
活用シーン
- 01貼り付けた表データの整理
- 02リスト内の重複行の除去
- 03指定列を基準にした CSV/TSV の重複除去
MCP 対応
ホスト型 Streamable HTTP MCP サーバーは、テキストの重複を除去する読み取り専用ツール `remove_duplicates` を1つ公開します。各呼び出しはメモリ内で処理され、保存されません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://removeduplicates.org/mcpclaude mcp add --transport http org-removeduplicates-remove-duplicates https://removeduplicates.org/mcp{"mcpServers":{"org-removeduplicates-remove-duplicates":{"type":"http","url":"https://removeduplicates.org/mcp"}}}Cursor で開く{"servers":{"org-removeduplicates-remove-duplicates":{"type":"http","url":"https://removeduplicates.org/mcp"}}}VS Code で開く{"mcpServers":{"org-removeduplicates-remove-duplicates":{"type":"http","url":"https://removeduplicates.org/mcp"}}}{"mcpServers":{"org-removeduplicates-remove-duplicates":{"serverUrl":"https://removeduplicates.org/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
1| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| keep | enum | いいえ | 重複項のどの出現を残すか。first | last |
| text | string | はい | リストまたはテーブルのテキスト。1 行に 1 項目、または CSV/タブ区切りの行。最大 131072 UTF-8 バイト。 |
| trim | boolean | いいえ | 比較時に前後の空白を無視し、空白を除去した値を返します。 |
| order | enum | いいえ | preserve は元の順序を維持し、sort は自然順(数値を考慮)で並べ替えます。preserve | sort |
| format | enum | いいえ | auto は CSV/TSV テーブルを自動検出し、lines は行全体を比較し、table は CSV/TSV 解析を強制します。auto | lines | table |
| header | boolean | いいえ | テーブルのみ:先頭行をヘッダーとして保持し、重複チェックと件数の対象外にします。 |
| compare | any | いいえ | テーブルのみ:"row" は行全体を比較します。0 始まりの列インデックスまたはインデックス配列を指定すると、その列のみを比較します。 |
| ignoreCase | boolean | いいえ | Apple と apple のような値を重複として扱います。 |
| removeEmpty | boolean | いいえ | 空行またはすべてのセルが空白の行を削除します。 |
詳細
removeduplicates.org
行、リスト、貼り付けた表計算データ、CSV ファイル、ローカルの XLSX ブックから重複を削除するための、目的を絞った静的ツールです。Static Assets を使用する Cloudflare Worker としてデプロイされています。
リンク:
- ウェブサイト:RemoveDuplicates.org
- Excel ツール:Excel からオンラインで重複を削除
- ソースコード:suvadadepolo-blip/remove-duplicates
ライセンス:MIT
AI エージェントから使う(MCP)
ホスト型 MCP サーバーを https://removeduplicates.org/mcp(Streamable HTTP)で利用できます。インストールも API キーやアカウントも不要です。Official MCP Registry には org.removeduplicates/remove-duplicates として登録されています。
Claude Code:
claude mcp add --transport http removeduplicates https://removeduplicates.org/mcp
Cline(cline_mcp_settings.json):
{
"mcpServers": {
"removeduplicates": {
"type": "streamableHttp",
"url": "https://removeduplicates.org/mcp"
}
}
}
Cursor(mcp.json)では、type を除いた同じ mcpServers エントリーを使用します。VS Code(.vscode/mcp.json):
{
"servers": {
"removeduplicates": {
"type": "http",
"url": "https://removeduplicates.org/mcp"
}
}
}
Gemini CLI では、リポジトリを拡張機能としてインストールできます(gemini extensions install https://github.com/suvadadepolo-blip/remove-duplicates)。gemini-extension.json が同じエンドポイントを指定します。
stdio のみを使用するクライアントは、npx mcp-remote https://removeduplicates.org/mcp でブリッジできます。
サーバーには読み取り専用のツール remove_duplicates が 1 つあります。text(最大 128 KiB)と、任意の format(auto、lines、table)、ignoreCase、trim、removeEmpty、keep(first、last)、order(preserve、sort)、compare(row、列インデックス、またはインデックスのリスト)、header を受け取り、件数とともに重複を削除したテキストを返します。各呼び出しはメモリ内で処理され、データは保存されません。.xlsx ブックには、ブラウザー内のみで動作するExcel ツールを使用してください。
製品の範囲
- 行と表を認識した重複削除はブラウザーのメモリ内で実行されます。大きな入力は、応答性を保てるサイズに分割して、同一オリジンの Web Worker にストリーミングされます。
- Excel と Google Sheets の行は TSV として貼り付けられます。また、引用符付きの CSV/TSV ファイルは、同じ 5 MB のローカル制限内で開けます。
- Excel ツールが受け付けるのはマクロなしの
.xlsxファイルのみです。行全体、または選択した列を安定した組み合わせで比較し、専用の Module Worker で重複を削除したブックを作成します。 - XLSX パッケージの制限は、圧縮後 10 MiB、ZIP エントリー 2,000 件、展開後の宣言済みデータ 100 MiB、ブックのセル 500,000 個、選択したシートのセル 250,000 個です。数式の行移動と交差する結合範囲はブロックされます。
- SheetJS CE 0.20.3 は、公式のソース URL、ライセンス、SHA-256 証明書とともに
public/vendor/sheetjs-0.20.3/に固定されています。有効な XLSX がローカルの ZIP 事前チェックを通過した後にのみ遅延読み込みされ、ホームページからリクエストされることはありません。 - ウェブサイトでは、ユーザーが開いたテキストやブックの内容をアップロードしたり保存したりしません。サーバー側で処理されるのは任意の
/mcpエンドポイントのみで、AI エージェントがそのリクエストのために送信したテキストを処理し、何も保存しません。 - アカウント、データベース、分析機能、広告、外部フォント、サードパーティ製のブラウザーランタイムは含まれていません。
- Cloudflare は、サイトの配信と保護に必要な通常の HTTP メタデータを引き続き処理します。この範囲はプライバシーに関する記述で明示されています。
- 利用規約とプライバシーに関するページは、それぞれ独立した実ページです。JavaScript が利用可能な場合は、ページ内ダイアログとして表示されます。
エージェントおよび回答エンジン向けの対応
robots.txtでは主要な AI クローラーを指定し、Content-Signal: search=yes, ai-input=yes, ai-train=yesを宣言しています。/llms.txtと/llms-full.txt(/llm.txtからリダイレクトされます)で、言語モデル向けにサイトを説明しています。- すべてのページには Markdown 版(
/index.md、/excel.md、/privacy.md、/terms.md)があり、Accept: text/markdownに対しても配信されます。HTML ルートではVary: Acceptと、API カタログ、llms.txt、エージェントスキルのインデックス、Markdown 版に対する RFC 8288 のLinkヘッダーを送信します。 /.well-known/api-catalog(RFC 9727)、/.well-known/mcp/server-card.json、remove-duplicates/SKILL.mdを含む/.well-known/agent-skills/index.json、および/.well-known/ai-catalog.json。/mcpは、呼び出しごとにテキストが最大 128 KiB に制限される、ステートレスな Streamable HTTP MCP サーバーです。ブラウザーでnavigator.modelContextが公開されている場合、ホームページでは WebMCP を介して同じツールを登録します。この経路ではタブ内でローカルに実行されます。どちらもpublic/js/agent-tool.jsとサイトのdedupe.jsエンジンを共有します。server.jsonは、公式 MCP Registry のエントリーorg.removeduplicates/remove-duplicatesです。ネームスペースの所有権は/.well-known/mcp-registry-auth(Ed25519 公開鍵)によって HTTP 経由で証明されます。秘密鍵は Git で無視されるlocal.env.txtのみに保存されています。node scripts/build-agent-files.mjsでサーバーカード、スキルダイジェスト、llms-full.txtを再生成します。これらが古い場合、npm run checkは失敗します。
コマンド
npm run check
npm test
npm run verify
npm run preview
npm run qa:browser
npm run benchmark:xlsx
npm run check:http
npm run deploy
実行時のプレビュー、XLSX ベンチマーク、ブラウザー QA、ダウンロードしたファイルの読み戻し、Lighthouse は OpenClaw 上で実施します。ポート 3630 は管理対象のプレビュー用に予約されています。デプロイには、1 つ上のディレクトリにあるプロジェクト専用の Cloudflare ラッパーを使用します。認証情報をこのプロジェクト内に保存することはありません。
リポジトリの衛生管理
- 実行時のアーティファクトは Git の対象外です:
output/、.codex-results/、.wrangler/、ログ、.DS_Store。 - シークレットを含むファイルは Git の対象外です:
.env*、local.env.txt、*.env.txt。.env.exampleなどのプレースホルダーテンプレートのみコミットできます。 - ローカルの計画資料とプロバイダーの証拠資料は Git の対象外です:
EXCEL_PLAN.md、IMPROVEMENT_PLAN.md、PROJECT_STATE.md、UTILITY_BASELINE.md、ops/。 public/vendor/sheetjs-0.20.3/は、上流のライセンス、ソースの記録、SHA-256 チェックとともに意図的にベンダー管理されています。
Cloudflare の構成
- Worker:
removeduplicates-org - 静的アセット:
public/ - Worker エントリーポイント:
src/worker.js - 静的アセットのバインディング:
ASSETS、run_worker_first: trueを設定 - Workers.dev の稼働中のステージング URL:
https://removeduplicates-org.whatmyname.workers.dev/ - 正規の本番ドメイン:
https://removeduplicates.org/ - リダイレクトする本番エイリアス:
https://www.removeduplicates.org/
Worker は /excel、直接アクセス可能な法律関連ルート、HTTP から HTTPS へのリダイレクトと正規ホストへのリダイレクト、メソッド処理、ブランド表示付き 404、キャッシュポリシー、HSTS、ハッシュ固定 CSP、Workers.dev の noindex 保護を担います。Excel のパスの大文字・小文字や末尾のスラッシュの違いは、スキームやホストの変更と同じ 1 回のリダイレクトで /excel に正規化されます。Worker が受け付けるのは GET と HEAD のみです。
本番リリース
有効な Cloudflare Zone と wrangler.jsonc には、次の 2 つの custom_domain ルートのみが含まれます。
removeduplicates.orgwww.removeduplicates.org
Worker は、パスとクエリを維持したまま www から apex へ 308 を返します。部分的なルート設定は無効であり、Zone Redirect Rule は使用しません。本番 apex、リダイレクトエイリアス、TLS、HTTP マトリックス、5 つのビューポートを使ったブラウザースイート、Lighthouse の合格結果は、プロジェクトの状態と本番デプロイ台帳に記録されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。