mcpField
L
list-dedup

list-dedup

github.com/cold-iqデータ・データベース347 回インストール2 週間前に更新
リポジトリ

list-dedup について

ColdIQ enrichment の前に連絡先や企業リストを整理・重複排除するデータ処理スキルです。LinkedIn URL の正規化値を主な照合キーとして使い、API 呼び出しは行いません。

主な機能

  1. 01LinkedIn URL の正規化
  2. 02URLまたはメールによる人物の重複排除
  3. 03URLまたは名称による企業の重複排除
  4. 04複数ソースを共通スキーマに統合
  5. 05重複時に最高スコアの行を保持
  6. 06企業ごとの連絡先数を制限

活用シーン

  1. 01enrichment 前のリスト整理
  2. 02複数ソースの連絡先を統合
  3. 03重複時に最高スコアのレコードを保持
  4. 04企業ごとの連絡先数を制限

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/cold-iq/coldiq-marketplace-skills --skill list-dedup

インストール後、Claude Code で/list-dedupを入力して読み込まれたか確認します。

同梱ファイルresources/credit-optimization.md

詳細

リストの重複排除

ColdIQ でデータをエンリッチする前に、データの重複を排除してクリーンアップするための純粋なデータ処理ユーティリティです。クレジットを最も大幅に節約できます。重複を削除するたびに、有料の検索/エンリッチ呼び出しを行わずに済みます。resources/credit-optimization.md を参照してください。このスキルは API 呼び出しを行いません。

重複排除を行うタイミング

  • エンリッチ前(同じ人物のエンリッチに二重に費用をかけないでください)
  • 複数のソースを統合した後(データベース検索+エンリッチ+広告スクレイピング)
  • スコアリング後(重複をまとめ、最もスコアの高い行を残します)

主キー:LinkedIn URL(最初に正規化)

import re
def normalize_linkedin(url):
    if not url: return ""
    return re.sub(r'\?.*$', '', url).rstrip('/').lower().replace('https://www.', 'https://')

def dedup_people(rows):
    seen, out = set(), []
    for r in rows:
        key = normalize_linkedin(r.get('linkedin_url', '')) or (r.get('email','').lower())
        if key and key not in seen:
            seen.add(key); out.append(r)
    return out

副キー:会社名/会社の LinkedIn URL

会社名を正規化します(Inc/LLC/Ltd の接尾辞を削除し、小文字にします)。より適切なのは、会社の LinkedIn URL がある場合、それを使って重複を排除する方法です。

複数ソースを統合するパターン

  1. 列を正規化 — 各ソースの列を、次の標準スキーマに対応付けます (full_name, title, linkedin_url, email, company_name, company_domain, company_linkedin, source, score)。
  2. 読み込み — すべてのソース CSV を読み込みます。
  3. 重複排除 — 正規化した LinkedIn URL(なければメールアドレス)で人物を、会社の LinkedIn URL/会社名で企業を重複排除します。
  4. 並べ替えとエクスポート — Tier 1 を最初にし、次にペルソナ、最後に会社名の順に並べます。

会社ごとの連絡先上限

1 つのアカウントに大量の連絡を送らないよう、会社ごとの連絡先を 5〜10 件に制限します。役職の優先順位(C レベル/VP/Director > Manager > IC)でランク付けし、company_domain ごとに上位 N 件を残します。

TAM との照合

連絡先リストをスコアリング済み TAM と company_domain で左外部結合して Tier を付与し、エンリッチ前に DQ 済み企業の連絡先を削除します。

チェックリスト

  • 比較前に LinkedIn URL を正規化する
  • LinkedIn URL(なければメールアドレス)で人物の重複を排除する
  • LinkedIn URL/正規化した会社名で企業の重複を排除する
  • 統合前にすべてのソースを 1 つのスキーマに対応付ける
  • 重複行は最もスコアの高いものを残す
  • 会社ごとの連絡先上限(5〜10 件)を適用する
  • TAM と照合し、DQ 企業を削除する
  • その後、エンリッチする(contact-enrichment を参照)

コメント