mcpField
R
RemoveDuplicates.org

RemoveDuplicates.org

远程服务
removeduplicates.org生产力05 周前更新

关于 RemoveDuplicates.org

RemoveDuplicates.org 是一款无状态去重工具,可清理文本中的重复行或表格行,包括粘贴的表格数据及 CSV/TSV。其托管 MCP 服务在内存中处理每次请求,并返回清理后的文本和计数。

主要功能

  1. 01去除重复文本行和表格行
  2. 02选择比较列及表头
  3. 03设置大小写、修剪和排序
  4. 04返回清理文本及计数
  5. 05MCP 请求处理后不存储

适用场景

  1. 01清理粘贴的电子表格行
  2. 02移除列表中的重复行
  3. 03按指定列去重 CSV 或 TSV

MCP 相关

托管的 Streamable HTTP MCP 服务提供一个只读工具 `remove_duplicates`,用于文本去重。每次调用均在内存中处理,不会存储。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://removeduplicates.org/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

1
参数类型必填说明
keepenum否重复项中保留哪一次出现。first | last
textstring是列表或表格文本:每行一个项目,或使用 CSV/制表符分隔的行。最多 131072 个 UTF-8 字节。
trimboolean否比较时忽略首尾空格,并返回去除空格后的值。
orderenum否preserve 保留原始顺序;sort 返回自然排序(识别数字)。preserve | sort
formatenum否auto 自动检测 CSV/TSV 表格;lines 比较整行;table 强制解析 CSV/TSV。auto | lines | table
headerboolean否仅适用于表格:将首行作为表头保留,不参与重复项检查和计数。
compareany否仅适用于表格:"row" 比较整行;从零开始的列索引或索引数组仅比较指定列。
ignoreCaseboolean否将 Apple 和 apple 这类值视为重复项。
removeEmptyboolean否删除空白行或全为空白的行。

详细介绍

removeduplicates.org

一个专用静态工具,可从行、列表、粘贴的电子表格数据、CSV 文件和本地 XLSX 工作簿中删除重复项,通过 Cloudflare Worker 和 Static Assets 部署。

链接:

许可证:MIT

通过 AI Agent 使用(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)使用相同的 mcpServers 条目,但不包含 type。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。它接受 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、2,000 个 ZIP 条目、声明的解压后数据 100 MiB、500,000 个工作簿单元格,以及所选工作表中的 250,000 个单元格。公式行移位和相交的合并区域会被阻止。
  • SheetJS CE 0.20.3 固定在 public/vendor/sheetjs-0.20.3/ 下,并附有其官方源代码 URL、许可证和 SHA-256 校验凭据。只有通过本地 ZIP 预检的有效 XLSX 才会触发延迟加载,且主页绝不会请求它。
  • 网站不会上传或持久保存用户打开的文本或工作簿内容。唯一的服务器端处理是可选的 /mcp 端点,它会处理 AI Agent 为该次请求发送的文本,且不存储任何内容。
  • 不包含账户、数据库、分析、广告、外部字体或第三方浏览器运行时。
  • Cloudflare 仍会处理交付和保护网站所需的常规 HTTP 元数据;隐私说明直接阐明了这一边界。
  • 条款和隐私页面均为实际的独立页面;启用 JavaScript 后,会增强为页面内对话框。

Agent 和答案引擎的适配界面

  • 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 和 RFC 8288 Link 标头,指向 API 目录、llms.txt、Agent 技能索引和 Markdown 替代版本。
  • /.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 是无状态的 Streamable HTTP MCP 服务,提供一个工具 remove_duplicates,每次调用的文本上限为 128 KiB。浏览器提供 navigator.modelContext 时,主页会通过 WebMCP 注册相同工具;该路径在标签页本地运行。两者共用 public/js/agent-tool.js 和网站的 dedupe.js 引擎。
  • server.json 是 Official 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 专供托管预览使用。部署使用上一级目录中按项目划分的 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 路径的大小写和尾随斜杠变体会与协议或主机名变更一起,在一次重定向中规范化至 /excel。Worker 仅接受 GET 和 HEAD。

生产发布

当前启用的 Cloudflare Zone 和 wrangler.jsonc 中恰好包含以下两个 custom_domain 路由:

  1. removeduplicates.org
  2. www.removeduplicates.org

Worker 会将 www 域名的请求以 308 状态码重定向到裸域名,并保留路径和查询参数。路由状态不完整即为无效,且不会使用 Zone Redirect Rule。项目状态记录和生产部署台账中均已记录:生产裸域名、重定向别名、TLS、HTTP 矩阵、五种视口的浏览器测试套件以及 Lighthouse 均已通过。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。