mcpField
P
prospect-enrich

prospect-enrich

github.com/scientiacapitalマーケティング・グロース2838 回インストール3 週間前に更新
リポジトリ

prospect-enrich について

BDRチーム向けのHubSpot連絡先補完スキルです。デモ依頼を優先して連絡先を分類し、不足している電話番号をApolloで検索し、見つからない場合はClayを使います。結果と階層タグをHubSpotに同期し、HTMLレポートを作成します。

主な機能

  1. 01電話番号のないHubSpot連絡先を検索
  2. 02除外対象と抑制中の連絡先をフィルタリング
  3. 03デモ依頼を優先しATL/BTLに分類
  4. 04Apolloで補完し未一致分をClayに回す
  5. 05電話番号と階層情報をHubSpotに同期
  6. 06階層順のHTMLレポートを生成

活用シーン

  1. 01HubSpotの電話番号未登録連絡先の補完
  2. 02問い合わせのあったデモ・価格依頼の優先処理
  3. 03対象となるATL・BTL連絡先の電話情報検索
  4. 04見込み客のフォロー用階層レポート作成

MCP 対応

HubSpot MCPツールで連絡先と会社を検索・更新し、Apollo MCPツールで人物・会社情報を補完します。未一致分の補完にはClayを使います。

インストール

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

$npx skills add https://github.com/scientiacapital/skills --skill prospect-enrich

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

同梱ファイルconfig.json

詳細

Prospect Enrich スキル

Apollo と Clay の API を使用して、電話番号が欠落している HubSpot の連絡先をエンリッチします。DEMO REQUEST 優先(自ら手を挙げた人を最優先)を適用し、次に ATL 優先の優先順位付けとゴールデンルール(顧客、チャネル、デバイス所有者、AE が所有する連絡先を除外)を適用します。 Tier 別に並べ替えた、電話番号ウォーターフォールおよび prospect-refresh タスクに対応したブランド HTML レポートを出力します。

<quick_start> トリガー: 月〜金 午前 6:00 ET 手動トリガー: 「Run prospect enrich」または「Enrich phoneless contacts」 依存関係: HubSpot ポータル 21530819 へのアクセス、Apollo クレジット、Clay クレジットが必要 出力: ブランド HTML レポート + tier タグ付きで HubSpot に同期されたエンリッチ済み連絡先 </quick_start>

<success_criteria>

  • phone = null のすべての連絡先を HubSpot に問い合わせる(地域: USA/Canada のみ)
  • ゴールデンルールの除外対象をフィルタリングする(顧客、チャネル、デバイス所有者、AE 所有、製品ページの関与者)
  • DEMO REQUEST 連絡先を特定する(first_conversion に demo/pricing キーワードが含まれる) — 最初にエンリッチ
  • 残りを ATL/BTL tier で分類する(CLAUDE.md の ATL/BTL Decision-Maker ルールを参照)
  • Apollo 経由で一括エンリッチする(apollo_people_bulk_match または apollo:enrich-lead)
  • Apollo で見つからなかった場合: Clay ウォーターフォールへ送る(find-and-enrich-contacts-at-company)
  • エンリッチ済みの電話番号を tier タグ付きで HubSpot に同期する
  • ATL-tier の連絡先について企業情報のエンリッチ(ドメイン、売上、従業員数)を含める
  • tier セクションと Epiphan カラーを含むブランド HTML レポートを生成する
  • レポート: 処理した連絡先の合計、電話番号一致率 %、ATL/BTL の内訳、使用クレジット </success_criteria>

ステージ 1: HubSpot から電話番号なしの連絡先を取得する

MCP ツール: search_crm_objects(HubSpot)

objectType: "contacts"
filterGroups: [{
  filters: [
    { propertyName: "phone", operator: "NOT_HAS_PROPERTY" },
    { propertyName: "hs_lead_status", operator: "IN", values: ["Subscriber", "Qualified Lead", "Inbound Lead", "Marketing Qualified Lead", "Sales Qualified Lead"] }
  ]
}]
properties: [
  "firstname", "lastname", "email", "company", "jobtitle", "phone",
  "first_conversion", "lifecyclestage", "hubspot_owner_id",
  "device_count", "engagement_overview", "is_channel"
]
limit: 100

出力: 名前、メール、会社、役職、first_conversion を含む連絡先のリスト。電話番号はなし。


ステージ 2: ゴールデンルールフィルターを適用する

ゴールデンルール(ハード除外 — クレジットを節約するためエンリッチの前に適用):

  • 除外: lifecyclestage = 'customer'(既存顧客)
  • 除外: device_count >= 1(デバイス所有者)
  • 除外: engagement_overview に製品利用が含まれる(製品のみの関与者)
  • 除外: is_channel = true(チャネルパートナー)
  • AE 所有(90 日間停滞の例外): hubspot_owner_id IN (82625923, 423155215, 190030668)
    • hs_lastmodifieddate が 90 日以上前の場合 → 保持するが、ATL/BTL tier + 案件金額とともに STALE AE LEAD としてタグ付けします。Tim がレビューします。
    • Ron Epstein(423155215): 90 日ルールはすべてのリードに適用されます
    • Lex Evans(82625923)と Phillip Sandler(190030668): 90 日ルールは NA の連絡先(USA/Canada)にのみ適用されます。NA 以外 → 引き続き除外します。
    • 最終アクティビティが 90 日未満の場合 → 除外(AE が積極的に対応中)
  • 除外: first_conversion ILIKE '%setup%' — 製品セットアップフォームのみ(営業関心ではない)
  • 保持: 地域フィルターを USA/Canada のみに適用

⚠️ 重要 — 以下の first_conversion 値は除外しないでください:

  • 'Pearl family demo'、'Demo signup'、'demo request'
  • 'General contact us'、'pricing'
  • 'Pearl'、'Connect'、'signup'

これらは意欲の高いデモリクエストです — 自ら手を挙げたアクティブな見込み客です。これらを DEMO REQUEST tier としてタグ付けし、他のすべての tier より先にエンリッチしてください。

出力: フィルタリング済みリスト(通常、ゴールデンルール適用後に入力の 60〜70%)


ステージ S — 抑制ゲート

エンリッチのクレジットを消費する前に、抑制された連絡先を除外します:

  • bdr_suppression_until が設定されており、かつ bdr_suppression_until > 今日の場合 → 除外
  • bdr_suppression_until が設定されていない場合(一度も抑制されていない) → 含める
  • bdr_suppression_until < 今日の場合(クーリング期間が終了) → 含める

HubSpot フィルター: propertyName: "bdr_suppression_until", operator: "NOT_HAS_PROPERTY" または operator: "LT", value: TODAY_ISO 参照: lead-suppression-spec(bdr_suppressed、bdr_suppression_reason、bdr_suppression_until)


ステージ 3: ATL/BTL 分類ゲート(必須)

処理優先順位を設定するため、エンリッチの前に適用します。

参照: CLAUDE.md § ATL/BTL Decision-Maker Classification v1.0

ティア 1: デモリクエスト (最初にエンリッチ — 最優先)

first_conversion に以下を含むすべてのコンタクト:

  • 'Demo signup'、'Pearl family demo'、'demo request'
  • 'General contact us'、'pricing'

これらは積極的に手を挙げている見込み客です — 役職に関係なく、直ちにエンリッチしてください。

ティア 2: ATL (2 番目にエンリッチ — 予算権限)

Chief (CIO、CTO、CFO、COO) • Vice President (VP、AVP、SVP、EVP) • President • Provost • Vice Provost • Superintendent • Director (IT、Technology、Facilities、Academic Technology、Procurement、Materials Mgmt、Medical Education、Court Administration の) • Dean • Court Administrator • Clerk of Court (Federal) • City Manager • County Manager • Senior Pastor • Executive Pastor

ティア 3: GRAY (3 番目にエンリッチ — Tim のレビュー用にフラグ)
  • Manager (AV/Facilities/IT) — Director 以上に報告し、かつ委任された予算権限が 25,000 ドル超の場合のみ ATL
  • Department Chair — 小規模機関では ATL、大規模大学では BTL
  • Director of Educational Technology — 報告ラインによる (Provost = ATL、IT VP = おそらく BTL)
  • Program Director — 部門レベルの予算保有者の場合のみ ATL、調整役の場合は BTL
ティア 4: BTL (最後にエンリッチ — 優先度を下げる)

Technician • Specialist • Coordinator • Support • Administrator (Systems/Network/Database) • Engineer (AV/Network/Systems) • Operator • Instructor/Professor/Faculty • Designer (Learning/Instructional/Graphic) • Assistant • Clerk (Court Admin 以外) • Volunteer • Intern • Student • Resident • Help Desk

エンリッチしない (ハードスキップ — Apollo/Clay のクレジットを消費しないこと)

Warehouse Manager • Network Manager • Systems Administrator • AV Technician • Graphic Design Instructor • Program Administrator • Web Designer • Classroom Support • Lab Coordinator • Maintenance • Building Engineer • Multimedia Services Manager • Video Production Specialist • Streaming Crew

分類ロジック:

if first_conversion matches DEMO_KEYWORDS:
  tier = "DEMO REQUEST"  # Enrich first, regardless of title
elif title in NEVER_ENRICH:
  tier = "NEVER"  # Hard skip — do not spend credits
elif title in ATL:
  tier = "ATL"
elif title in GRAY:
  tier = "GRAY"  # Flag for Tim's manual review
else:
  tier = "BTL"

# Processing order: DEMO REQUEST → ATL → GRAY → BTL (skip NEVER)

ステージ 4: Apollo による一括エンリッチ

ティア優先順でコンタクトを処理: DEMO REQUEST → ATL → GRAY → BTL

MCP ツール: apollo_people_bulk_match (または apollo:enrich-lead スキル)

details: [
  {
    id: contact.id,
    first_name: contact.firstname,
    last_name: contact.lastname,
    email: contact.email,
    organization_name: contact.company,
    domain: extract domain from email or company website
  }
  ... (up to 10 per batch)
]
reveal_personal_emails: false

期待されるエンリッチ結果:

  • phone (直通、携帯、会社)
  • current_role_min_months_since_start_date (シニアリティシグナルとしての在職期間)
  • person_seniorities (c_suite、vp、director、manager など)

マッチ率の目標: バッチの 65-75% が電話番号を取得すべきです。


ステージ 5: ミスマッチを Clay へウォーターフォール

Apollo でマッチしなかった場合: Clay の find-and-enrich-contacts-at-company に送信

MCP ツール: find-and-enrich-contacts-at-company

companyIdentifier: contact.company (domain preferred)
contactFilters: {
  job_title_keywords: [extract broad role from contact.jobtitle],
  locations: ["United States", "Canada"]
}
dataPoints: {
  contactDataPoints: [{ type: "Email" }],
  companyDataPoints: [{ type: "Latest Funding" }, { type: "Tech Stack" }]
}

Clay エンリッチ: 会社内の一致するコンタクトをメール + 会社データとともに返します。


ステージ 6: HubSpot への同期

エンリッチされた各コンタクトに対して:

  1. HubSpot コンタクトを更新 (manage_crm_objects (updateRequest) 経由):

    • phone (Apollo/Clay からの直通または携帯)
    • hs_analytics_num_page_views (エンゲージメントシグナル)
    • メモにタグ付け: [DEMO REQUEST]、[ATL]、[GRAY]、または [BTL]
  2. 会社データをエンリッチ (まだ設定されていない場合):

    • MCP ツール: apollo_organizations_enrich
    • HubSpot 会社を更新: revenue、headcount、founded_date

ステージ 7: ブランド化された HTML レポートの生成

出力: HTML ファイルはワークスペースに bdr-v3-prospect-enrich-YYYY-MM-DD.html として保存されます

スタイリング:

  • Epiphan ブランドカラー: #1a1a2e (ダーク)、#e94560 (アクセント)、#0f3460 (プライマリ)
  • クリーンでプロフェッショナルなレイアウト
  • モバイルレスポンシブデザイン

レポートのセクション:

サマリーメトリクステーブル:

メトリクス値
電話番号なしプールの合計X
Golden Rules フィルター適用後Y (Z% 除外)
DEMO REQUEST ティアD
ATL ティアA
GRAY ティアG
BTL ティアB
NEVER ティア (スキップ)N
検出された電話番号 (Apollo)PA (処理対象の PA%)
検出された電話番号 (Clay)PC (非 Apollo の PC%)
エンリッチ済み合計PA + PC (成功率 %)
使用された Apollo クレジットC

セクション 1: DEMO REQUEST コンタクト (緑色ハイライト) 最初にソートされます — これらは最もコンバージョン可能性が高い手挙げ者です。

コンタクトメール役職会社電話番号初回コンバージョン売上アクション
...............デモ登録...優先発信

セクション 2: ATL コンタクト (青色ハイライト) 予算の意思決定者 — 2 番目の優先度です。

セクション 3: GRAY コンタクト (黄色ハイライト) Tim による手動レビューのためにフラグが立てられました — 予算権限が不明確です。

セクション 4: BTL コンタクト (グレー) 予算権限なし — 最も優先度の低いエンリッチ対象です。

セクション 5: NEVER ENRICH スキップリスト NEVER ENRICH の役職に一致したコンタクト — クレジットは消費されていません。

セクション 6: 主要なインサイト + 推奨アクション

  • ATL 密度別のトップ企業
  • 最も価値の高い DEMO REQUEST
  • 推奨される次のステップ

ステージ 8: アウトカムサイドカーの出力 最終ステップとして、以下の JSON を ~/.claude/skill-analytics/last-outcome-prospect-enrich.json に書き込みます:

{"ts":"[current UTC ISO8601]","skill":"prospect-enrich","version":"1.1.0","variant":"default",
 "status":"[success|partial|error]","runtime_ms":[estimated ms from start],
 "metrics":{"contacts_processed":[Stage 1 total],"phones_found":[Apollo+Clay hits],
 "phone_match_rate_pct":[phones/contacts*100],"atl_count":[ATL tier],"demo_request_count":[DEMO tier],
 "credits_used":[Apollo batch count]},"error":null,"session_id":"[date YYYY-MM-DD]"}

一部のステージが失敗したものの結果が生成された場合は、ステータスに "partial" を使用してください。"error" は出力がまったく生成されなかった場合にのみ使用してください。どのフィールドにもコンタクト名やメールアドレスを含めないでください。

次のステップ: 結果は電話番号なしの再チェックのために phone-verification-waterfall-skill へ、純新規の ICP 検索のために prospect-refresh-skill へ渡されます。


スキルメタデータ

バージョン: 1.1 最終更新: 2026-03-19 作者: Tim Kipper ステータス: 本番 統合: HubSpot (ポータル 21530819) + Apollo + Clay ティア: P1 (コア BDR 自動化) トリガー: スケジュール (月〜金 6:00 AM) + 手動 ("Run prospect enrich") 変更履歴:

  • v1.1 (2026-03-19): DEMO REQUEST ティア (最優先) を追加、AE オーナー除外 (ID 82625923、423155215)、first_conversion フィルターロジック、Epiphan ブランドカラーを使用した HTML レポート出力を追加。スケジュールを月〜金に拡大 (従来は月のみ)。
  • v1.0 (2026-03-19): ATL/BTL 分類、Apollo + Clay ウォーターフォールを備えた初回リリース。

コメント