Dedupe Records
dedupe_recordsFind and remove duplicate records (CRM contacts, leads, customers, products) in a JSON array. Modes: exact, normalized (emails: case, Gmail dots and +tags; phones: punctuation and country prefix; URLs: scheme, www, tracking params; names: accents, honorifics, word order; companies: Inc / Ltd / GmbH suffixes) and fuzzy (Jaro-Winkler / token similarity with weighted fields, blocking + sorted neighbourhood so 5,000 records stay fast). Groups transitive matches, keeps the first / last / most complete record, optionally merges missing fields from the duplicates, and returns the unique records plus every duplicate group with its score. Price: $0.003 USDC per successful call (x402, Solana). Same tool over HTTPS: POST https://scorptech.it.com/api/x402/v1/dedupe-records
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"records": "<records>"
},
"name": "dedupe_records"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| keep | No | first | |
| mode | No | normalized | |
| merge | No | Fill empty fields of the kept record from its duplicates | |
| types | No | Optional field → type map (email, phone, url, name, company, text, number, exact); auto-detected from field names and values otherwise | |
| fields | No | Fields to compare (default: every field) | |
| records | Yes | Array of record objects (max 5000) | |
| threshold | No | Fuzzy mode: minimum weighted similarity | |
| includeRecords | No | Return the de-duplicated records |