Remove duplicate lines or CSV/TSV rows from text. Stateless: processed per call, never stored.
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Remove duplicate lines from a text list, or duplicate rows from CSV/TSV text such as rows copied from Excel or Google Sheets. Uses the same engine as removeduplicates.org and returns the cleaned text with counts. Stateless: the text is processed in memory for this call only and is never stored.
The list or table text: one item per line, or CSV/tab-separated rows. Up to 131072 UTF-8 bytes.
Which occurrence of a duplicate survives.
Ignore surrounding spaces when comparing and return trimmed values.
preserve keeps the original order; sort returns a natural (numeric-aware) sort.
auto detects CSV/TSV tables; lines compares whole lines; table forces CSV/TSV parsing.
Tables only: keep the first row as a header outside duplicate checks and counts.
Tables only: "row" compares entire rows; a zero-based column index or an array of indices compares only those columns.
Treat values such as Apple and apple as duplicates.
Drop blank lines or all-blank rows.
Remove duplicate lines from a text list, or duplicate rows from CSV/TSV text such as rows copied from Excel or Google Sheets. Uses the same engine as removeduplicates.org and returns the cleaned text with counts. Stateless: the text is processed in memory for this call only and is never stored.
| Argument | Type | Description |
|---|---|---|
| keep | string | Which occurrence of a duplicate survives. |
| text* | string | The list or table text: one item per line, or CSV/tab-separated rows. Up to 131072 UTF-8 bytes. |
| trim | boolean | Ignore surrounding spaces when comparing and return trimmed values. |
| order | string | preserve keeps the original order; sort returns a natural (numeric-aware) sort. |
| format | string | auto detects CSV/TSV tables; lines compares whole lines; table forces CSV/TSV parsing. |
| header | boolean | Tables only: keep the first row as a header outside duplicate checks and counts. |
| compare | any | Tables only: "row" compares entire rows; a zero-based column index or an array of indices compares only those columns. |
| ignoreCase | boolean | Treat values such as Apple and apple as duplicates. |
| removeEmpty | boolean | Drop blank lines or all-blank rows. |
{
"type": "object",
"required": [
"text"
],
"properties": {
"keep": {
"enum": [
"first",
"last"
],
"type": "string",
"default": "first",
"description": "Which occurrence of a duplicate survives."
},
"text": {
"type": "string",
"description": "The list or table text: one item per line, or CSV/tab-separated rows. Up to 131072 UTF-8 bytes."
},
"trim": {
"type": "boolean",
"default": false,
"description": "Ignore surrounding spaces when comparing and return trimmed values."
},
"order": {
"enum": [
"preserve",
"sort"
],
"type": "string",
"default": "preserve",
"description": "preserve keeps the original order; sort returns a natural (numeric-aware) sort."
},
"format": {
"enum": [
"auto",
"lines",
"table"
],
"type": "string",
"default": "auto",
"description": "auto detects CSV/TSV tables; lines compares whole lines; table forces CSV/TSV parsing."
},
"header": {
"type": "boolean",
"default": false,
"description": "Tables only: keep the first row as a header outside duplicate checks and counts."
},
"compare": {
"anyOf": [
{
"enum": [
"row"
],
"type": "string"
},
{
"type": "integer",
"minimum": 0
},
{
"type": "array",
"items": {
"type": "integer",
"minimum": 0
},
"minItems": 1,
"uniqueItems": true
}
],
"default": "row",
"description": "Tables only: \"row\" compares entire rows; a zero-based column index or an array of indices compares only those columns."
},
"ignoreCase": {
"type": "boolean",
"default": false,
"description": "Treat values such as Apple and apple as duplicates."
},
"removeEmpty": {
"type": "boolean",
"default": true,
"description": "Drop blank lines or all-blank rows."
}
},
"additionalProperties": false
}