mcpField
F
finding-saas-company-leads-twitter

finding-saas-company-leads-twitter

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

finding-saas-company-leads-twitter について

Twitter上の活動からSaaS企業やソフトウェア製品のアカウントを探す、リード調査向けのスキルです。キーワード検索とプロフィール補完を組み合わせ、フォロワー数で企業の段階を分類します。

主な機能

  1. 01ローンチの兆候から企業を発見
  2. 02分野のキーワードとハッシュタグを検索
  3. 03アカウントプロフィールを補完
  4. 04フォロワー数で企業段階を分類
  5. 05見込み顧客を採点して整理

活用シーン

  1. 01SaaS分野の見込み顧客リスト作成
  2. 02Twitterで初期段階のソフトウェア企業を発見
  3. 03外部連絡を優先するアクティブな企業アカウントの選定

MCP 対応

Apify MCPサーバーのrun-actorツールでtweet-scraperとtwitter-user-scraperを実行できます。

インストール

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

$npx skills add https://github.com/apidojo-io/apidojo-skills --skill finding-saas-company-leads-twitter

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

詳細

TwitterでSaaS企業のリードを探す

Twitter上のシグナル(製品のローンチ、機能の発表、創業者の活動、ニッチな分野固有のハッシュタグ)から、SaaS企業やソフトウェア製品のアカウントを見つけます。創業初期のB2B SaaS企業は、正式なウェブサイトを立ち上げる前にTwitterで最も活発に活動しています。

前提条件

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

入力

パラメーター型必須デフォルト備考
startUrlsarray任意[]TwitterのプロフィールまたはツイートのURL
twitterHandlesarray任意[]Twitterのユーザー名(@なし)
twitterUserIdsarray任意[]TwitterのユーザーID
getFollowersboolean任意falseフォロワーリストを抽出します
getFollowingboolean任意falseフォロー中のアカウントリストを抽出します
getRetweetersboolean任意falseツイートURLのリツイートしたアカウントを抽出します
includeUnavailableUsersboolean任意false利用できない/凍結されたユーザーを含めます
maxItemsnumber任意無制限返すユーザーの最大数
customMapFunctionstring任意—各出力オブジェクトを変換するJavaScript関数

ワークフロー

Progress:
- [ ] Step 1: Build keyword and hashtag search list for vertical
- [ ] Step 2: Run tweet-scraper to find active companies
- [ ] Step 3: Extract unique company handles
- [ ] Step 4: Enrich via twitter-user-scraper
- [ ] Step 5: Score and classify by stage
- [ ] Step 6: Deliver lead list
ステップ 1:キーワードを検索する

業界分野をもとに作成します。「プロジェクト管理SaaS」の例:

Keywords: ["project management software", "PM tool", "#pmtools", "task management SaaS",
           "launched a product", "we built", "try our tool", "project management app"]

標準的なSaaSのシグナルとなる語句(常に含めてください):

["just launched", "we built", "our product", "sign up free", "#buildinpublic",
 "new feature", "we're hiring", "Series A", "product update", "[vertical] tool"]
ステップ 2:tweet-scraperを実行する

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

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

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

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~twitter-user-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": ["[VERTICAL] software", "[VERTICAL] SaaS", "[VERTICAL] tool launch", "we built [VERTICAL]"],
  "maxItems": 300,
  "tweetLanguage": "en"
}

REST APIで代替する場合:

curl -X POST   "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{
    "searchTerms": ["HR tech SaaS", "HR software launch", "we built HR tool"],
    "maxItems": 300
  }'

重複を除いたauthor.usernameの値を収集します。

ステップ 3:プロフィールを補完する

Apify MCPを利用できる場合:

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

REST APIで代替する場合:

curl -X POST   "https://api.apify.com/v2/acts/apidojo~twitter-user-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{"usernames": ["handle1", "handle2"]}'
ステップ 4:絞り込みと分類

SaaS企業かどうか? 自己紹介に次の内容が含まれている場合は残します。

  • 製品関連のキーワード:"software"、"SaaS"、"platform"、"app"、"tool"、"API"、"dashboard"
  • ローンチのシグナル:"try"、"sign up"、"free trial"、"beta"
  • 資金調達のシグナル:"backed by"、"YC"、"Techstars"、"seed"、"Series A/B"

followerCountによるステージ分類:

early: followerCount < 1,000
growing: 1,000–10,000
established: > 10,000

企業スコア:

lead_score = (is_saas_signal ? 1 : 0) * 0.40
           + (has_website ? 1 : 0) * 0.25
           + (tweeted_in_last_30_days ? 1 : 0) * 0.20
           + min(followerCount / 5000, 1) * 0.15
ステップ 5:例外ケース
  • 企業ではなく個人アカウントが返される場合:絞り込みます。name != usernameで、自己紹介に製品について記載しているアカウントを優先し、自己紹介に一人称が含まれるアカウント(「I build...」など)の優先度を下げます
  • 見つかった企業が20社未満の場合:業界分野のキーワードを広げ、ハッシュタグ#buildinpublic、#indiehacker、#saasを直接試します
  • 企業が重複している場合(創業者と企業アカウントの両方が見つかった場合):企業アカウントを残し、創業者のハンドルを連絡先としてリンクします

出力形式

# SaaS Company Leads: [VERTICAL]
Companies found: [N] | Early: [N] | Growing: [N] | Established: [N] | Date: [DATE]

## Growing-Stage Companies (Best Outreach Window)
| Company | Handle | Product | Stage | Followers | Website | Score |
|---------|--------|---------|-------|-----------|---------|-------|
| [name] | @[handle] | [1-line description from bio] | Growing | [N] | [url] | [0.XX] |

## Early-Stage (High Receptivity)
| Company | Handle | Product | Followers | Last Active |
|---------|--------|---------|-----------|------------|

## Established (Formal Sales Cycle)
| Company | Handle | Product | Followers | Website |
|---------|--------|---------|-----------|---------|

トラブルシューティング

結果の大半が個人アカウントです: 検索語に"software" OR "app" OR "platform"を追加し、自己紹介のキーワードで厳しく絞り込みます。 業界分野が広すぎます(企業が500社以上返されます): より狭いサブ業界に絞ります(例:「プロジェクト管理」→「リモートチーム向けの非同期プロジェクト管理」)。 企業が活動していません(最後のツイートから60日以上経過): 活動を停止している可能性があるとしてフラグを付け、製品のウェブサイトと照合して活動状況を確認します。

コメント