tam-scoring について
tam-scoringは、観測可能なシグナルから企業に数値を付け、優先度別に分類するスキルです。評価基準やデータ整理の手順に加え、評価項目の最新データを取得するColdIQのエンドポイントを示します。
主な機能
- 01観測可能なシグナルによる企業評価
- 02スコアに基づく優先度分類
- 03ColdIQ経由の企業データ取得
- 04企業レコードの整理と重複排除
- 05カスタム評価モデルの定義と実行
活用シーン
- 01ターゲット市場の企業を優先順位付け
- 02エンリッチメント前に対象外レコードを除外
- 03確認用に優先度別の企業データを作成
MCP 対応
評価に使う企業情報、企業属性、技術スタック、資金調達情報を提供するColdIQのエンドポイントを示しています。MCPインターフェースについての記載はありません。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ cold-iq/ coldiq-marketplace-skills --skill tam-scoringインストール後、Claude Code で/tam-scoringを入力して読み込まれたか確認します。
詳細
TAM スコアリング
観測可能なシグナルに基づいて各企業に数値スコアを割り当て、ティアに分類します。ColdIQ モデルでは、4~6 個のシグナルグループを使って 80~100 点でスコアリングします。計算はローカルで行います。このスキルでは、スコアリングする各データポイントをどの ColdIQ エンドポイントから取得するかを示し、モデルが最新データで実行されるようにします。
ColdIQ マーケットプレイスのエンドポイント(スコアリング対象フィールドのデータソース)
| スコアリング対象データポイント | メソッド | パス | クレジット | エンドポイント ID | 備考 |
|---|---|---|---|---|---|
| 企業属性(規模、売上、業界、資金調達) | POST | /v1/limadata/enrich/company | 1 | limadata.enrich.company | ほとんどのグループで 1 回の呼び出し |
| 大規模な企業リスト | POST | /v1/ai-ark/companies | 結果ごと | ai_ark.companies.search | スコアリングするリストを作成 |
| テックスタックのシグナル | POST | /v1/builtwith/domain | 一律 | builtwith.domain | 複雑性/専門性グループ |
| 資金調達/PE の支援 | GET | /v1/signalbase/funding-signals | 不明 | signalbase.funding_signals | 所有形態/ボーナスグループ |
エンリッチメント済みデータを使ってスコアリングします。DQ と判定する行のエンリッチメントに費用をかけないでください。明らかな DQ を先にフィルタリングしてから、次を実行します。
→ POST /v1/limadata/enrich/company · 1 クレジット · limadata.enrich.company
標準的なティアのしきい値
| ティア | スコア | 対応 |
|---|---|---|
| Tier 1 | 65+ | 最優先で最初に送信し、最適なパーソナライズを行う |
| Tier 2 | 50–64 | 適合度が高い第 2 波 |
| Tier 3 | 35–49 | 適合度は低め。件数重視の施策のみ |
| DQ | <35 | 送信しない |
一般的なシグナルグループ
- 規模(10–25): 10k+ → 25、5k–9,999 → 20、2k–4,999 → 15、500–1,999 → 10、50–499 → 5、<50 → 0。
- 売上(15–20): $50M–$500M → 20(最適範囲)、$25–50M → 15、$500M–1B → 10、$10–25M → 8、$1B+ → 5。
- 業界(10–15): 中核 → 15、隣接 → 10、対象範囲を拡張 → 5、不明 → 5、除外 → −100(自動的に DQ)。
- 複雑性/専門性(15–30): クライアント固有のシグナル(拠点数、市場数、競合/補完技術、デジタル成熟度)。
- 所有形態/PE(10–20): PE の支援あり → 20、PE 子会社 → 15、VC/グロース → 10、不明 → 5、創業者所有/非営利 → 0。
- ボーナス(5–10): フランチャイズ本部、キャッシュフロー関連キーワード、急成長、最近の資金調達、関連職種の採用。
スコアリング前のデータクレンジング
BOGUS_NAMES = {"local my business", "google ai plugin", "auto-entrepreneur"}
def is_bogus(name):
l = name.strip().lower()
return l in BOGUS_NAMES or any(s in l for s in ["follow us", "test account"])
# Remove slug franchises (keller-williams-realty-dpr), flag extreme values, dedup by name (keep top score).
Python スコアラーのパターン
def score_company(row):
total, breakdown = 0, []
for label, fn, field in [("Scale", score_scale, "# Employees"),
("Revenue", score_revenue, "Annual Revenue"),
("Industry", score_industry, "Industry"),
("Custom", score_custom, None)]:
pts, reason = fn(row if field is None else parse_number(row.get(field, 0)))
total += pts; breakdown.append(f"{label}: {pts} ({reason})")
if any("EXCLUDED" in b for b in breakdown): return -1, "DQ", breakdown
tier = "Tier 1" if total>=65 else "Tier 2" if total>=50 else "Tier 3" if total>=35 else "DQ"
return total, tier, breakdown
# load → clean(is_bogus) → score → dedup by name(keep highest) → sort desc → export CSV with Score/Tier/Breakdown
新しいモデルの構築方法
- 合計が 80~100 点になるように、4~6 個のシグナルグループを選びます。 2. しきい値を設定します。 3. シグナルごとのスコアリングルールを記述します。
- データをクレンジングします。 5. エンリッチメント済みのエクスポートに対して実行します。 6. ティアごとの CSV を生成します。 7. サンプルをクライアントに送り、承認を得ます。 8. 新しいエンリッチメントデータが届いたら再実行します。最初に重複を除去して(list-dedup)、同じ企業を二度スコアリングしないようにします。
コメント
Markdown 対応