mcpField
B
building-twitter-prospect-lists

building-twitter-prospect-lists

github.com/apidojo-ioマーケティング・グロース1777 回インストール24 週間前に更新
リポジトリ

building-twitter-prospect-lists について

トピックの投稿とプロフィール情報から Twitter/X の見込み顧客リストを作るスキルです。マーケティング担当者向けに、ICP の設定から候補者の選別・順位付け、連絡用リストの作成までを案内します。

主な機能

  1. 01キーワードやトピックで投稿を検索
  2. 02投稿者プロフィールの収集と重複排除
  3. 03自己紹介、フォロワー数、場所で絞り込み
  4. 04関連性とエンゲージメントで順位付け
  5. 05アウトリーチ用リストの作成

活用シーン

  1. 01対象トピックを投稿する創業者やマーケターの発見
  2. 02職種や業界の手掛かりを使った見込み顧客リスト作成
  3. 03個別のアウトリーチ候補の優先順位付け

MCP 対応

Apify MCP サーバーを使って tweet-scraper と twitter-user-scraper の Actor を実行できます。コマンドラインと REST API による方法も記載されています。

インストール

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

$npx skills add https://github.com/apidojo-io/apidojo-skills --skill building-twitter-prospect-lists

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

詳細

Twitter プロスペクトリストの作成

Twitter/X を検索し、プロフィールのキーワードやトピックベースのツイート検索を使って、ターゲットとなる ICP(理想顧客プロファイル)に合致するプロフィールを探します。エンゲージメントのシグナルとプロフィールの情報を含む、連絡先リストとしてすぐに使える一覧を作成します。

前提条件

  • APIFY_TOKEN 環境変数が設定されていること
  • 任意:Apify MCP サーバーがインストールされていること

入力

パラメーター型必須デフォルト備考
searchTermsarray✅[]Twitter の高度な検索クエリ(例:["#AI lang:en", "from:NASA"])
sortstring任意Top並び替え順:Latest、Top、または Latest+Top
tweetLanguagestring任意—ISO 639-1 言語コード(例:en)
maxItemsnumber任意無制限返すツイートの最大数
onlyVerifiedUsersboolean任意false認証済みユーザーのツイートのみ
onlyTwitterBlueboolean任意falseTwitter Blue 登録者のツイートのみ
onlyImageboolean任意false画像付きツイートのみ
onlyVideoboolean任意false動画付きツイートのみ
onlyQuoteboolean任意false引用ツイートのみ
authorstring任意—特定の投稿者ハンドルに絞り込み
inReplyTostring任意—特定のハンドルへの返信ツイート
mentioningstring任意—特定のハンドルに言及しているツイート
geotaggedNearstring任意—指定した場所の近くに位置情報が付いたツイート
withinRadiusstring任意—geotaggedNear の周囲の半径
geocodestring任意—緯度・経度と半径の文字列
placeObjectIdstring任意—場所がタグ付けされたツイート
minimumRetweetsnumber任意—リツイート数の最小値
minimumFavoritesnumber任意—いいね数の最小値
minimumRepliesnumber任意—返信数の最小値
startstring任意—この日付以降のツイート(YYYY-MM-DD)
endstring任意—この日付以前のツイート(YYYY-MM-DD)
includeSearchTermsboolean任意false一致した検索語を各ツイートに追加
customMapFunctionstring任意—各出力オブジェクトを変換する JavaScript 関数

ワークフロー

Progress:
- [ ] Step 1: Define ICP and search strategy
- [ ] Step 2: Run tweet-scraper for keyword/topic tweets
- [ ] Step 3: Extract unique authors from results
- [ ] Step 4: Enrich with twitter-user-scraper for bio + follower data
- [ ] Step 5: Filter, rank, and deliver prospect list
ステップ 1:ICP と戦略を定義する

ユーザーに次の内容を尋ねます:

  • 職種名のキーワード:Twitter のプロフィール検索に使用(例:「Head of Growth」、「Founder」、「CTO」)
  • トピックのキーワード:ICP はどのようなトピックについてツイートしますか?(例:「SaaS metrics」、「PLG」、「RevOps」)
  • 業界のシグナル:プロフィールから適切な業界を示すキーワード(例:「SaaS」、「fintech」、「healthcare」)
  • フォロワー数の範囲(任意):例:1,000~50,000(知名度の低すぎる人や著名人の両方を除外します)
  • 場所(任意):例:「San Francisco」、「London」
  • リストのサイズ:見込み客は何人必要ですか?
ステップ 2:トピックベースのツイートを検索する

ICP が関心を持つトピックについて、Twitter でツイートを検索します。あるトピックについて積極的にツイートしている人は、見込み度が高いと考えられます。

推奨 — run_actor.js(待機、出力、ファイル保存を自動処理):

# Quick answer (prints table to chat)
node scripts/run_actor.js \
  --actor "apidojo~tweet-scraper" \
  --input '{"param": "value"}'

# Save as CSV
node scripts/run_actor.js \
  --actor "apidojo~tweet-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.csv --format csv

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~tweet-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.json --format json

環境または .env ファイルで APIFY_TOKEN を設定する必要があります。

Apify MCP が利用可能な場合:

Tool: apify:run-actor
Actor: "apidojo~tweet-scraper"
Input:
{
  "searchTerms": ["[TOPIC_KEYWORD_1]", "[TOPIC_KEYWORD_2]"],
  "maxItems": 200,
  "tweetLanguage": "en"
}

Apify MCP が利用できない場合:

curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "searchTerms": ["[TOPIC_KEYWORD]"],
    "maxItems": 200
  }'

トピックのキーワードごとに実行します。すべての author.username の値を収集し、重複を除去します。これにより候補者リストが得られます。

ステップ 3:候補者のプロフィールデータを取得する

ステップ 2 で得た重複のないユーザー名から、上位 100~200 件を選びます。プロフィールのキーワードやフォロワー数で絞り込むため、プロフィールの全データを取得します。

Apify MCP が利用可能な場合:

Tool: apify:run-actor
Actor: "apidojo~twitter-user-scraper"
Input:
{
  "usernames": ["[username1]", "[username2]", "..."],
  "maxItems": 100
}

Apify MCP が利用できない場合:

curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~twitter-user-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "usernames": ["[username1]", "[username2]"]
  }'
ステップ 4:ICP の基準に照らして絞り込む

プロフィールデータから、次の条件をすべて満たすユーザーのみを残します。

  1. 自己紹介に、職種キーワードまたは業界を示すキーワードが少なくとも 1 つ含まれている
  2. フォロワー数が指定範囲内である(指定されている場合)
  3. 場所が一致している(指定されている場合)— location フィールドを確認します
  4. ボットではない(プロフィール画像があり、ツイート数が 10 件を超え、アカウントの開設から 6 か月以上経過している)

次のアカウントは除外します。

  • デフォルトのプロフィール画像を使用しているアカウント
  • ツイート数が 0 件のアカウント
  • 認証済みの大規模インフルエンサー(フォロワー数が範囲を超えている)
  • 明らかに自動化されたアカウント
ステップ 5:順位付けしてフォーマットする

絞り込んだ見込み客を、次の基準で順位付けします。

  1. 関連性スコア = 自己紹介で一致した ICP キーワードの数
  2. エンゲージメントの指標 =(最近のツイートへの「いいね」数 + リツイート数)/ フォロワー数

出力形式

# Twitter Prospect List: [ICP DESCRIPTION]
Generated: [N] prospects | Filters applied: [summary] | Date: [DATE]

| # | Name | Handle | Followers | Job / Bio | Location | Last Active | Profile |
|---|------|--------|-----------|-----------|----------|-------------|---------|
| 1 | [name] | @[handle] | [N] | [bio excerpt] | [city] | [date] | [url] |
| 2 | [name] | @[handle] | [N] | [bio excerpt] | [city] | [date] | [url] |

## Top 10 Highest-Priority Prospects
1. **@[handle]** — "[bio]" | [N] followers | Recently tweeted about: [topic]
2. **@[handle]** — "[bio]" | [N] followers | Recently tweeted about: [topic]
...

## Notes
- [N] candidates found in topic search
- [N] filtered out (didn't match ICP criteria)
- [N] final prospects delivered
- Engagement signals are 24-48h delayed

アウトリーチのパーソナライズ

有望な見込み客ごとに、最近のツイートのサンプルを使ってアウトリーチをパーソナライズできます。最初のメッセージで話題にできるよう、最近のトピックを確認してください。

トラブルシューティング

絞り込み後の結果が少なすぎる場合: 自己紹介のキーワードを広げます(AND ではなく OR のロジックを使います)。ステップ 2 でトピックキーワードを増やしてみてください。 無関係なアカウントが多すぎる場合: 自己紹介のフィルターに業界固有のキーワードを追加します(例:「SaaS」または「B2B」が自己紹介に含まれることを必須にします)。 場所のフィルターが機能しない場合: Twitter の場所情報はユーザーが自己申告するもので、一貫性がありません。厳密なフィルターではなく、参考情報として扱ってください。

コメント