自社ブランド、競合、特定のトピックについて人々が X、Reddit、TikTok、Instagram、YouTube、Threads、Telegram、Google News で何を語っているかを集め、保存やグラフ化、モデルへの入力にそのまま使える JSON で受け取れます。各プラットフォームはそれぞれ独自の検索フィルターを持つデータツールで、料金は投稿、コメント、記事 1 件ごとに決まっています。コードから好きなスケジュールで実行して SNS をモニタリングすることも、MCP 経由で AI エージェントに実行させることもできます。
AI エージェントに任せる
このプロンプトを Claude Code、Cursor、Codex などのコーディングエージェントに貼り付けてください。ドキュメントの場所と API キーの使い方をエージェントに伝えます。
Track mentions and conversations about a brand or topic on X, Reddit, TikTok, Instagram, YouTube, Threads, Telegram and Google News. Use the Lovely Router data tools: each returns JSON and is billed per result.
- Docs (read first): https://lovelyrouter.com/docs/tools/find.md and https://lovelyrouter.com/docs/tools/run.md
- Plan first: POST https://lovelyrouter.com/v1/tools/suggest with `{"task": "<my task in plain words>"}` (free). It returns the tools to run in order, each with an example `input`, the `input_required` fields, an estimated cost and a ready-made `run` request. Replace the example values with my task's; if a field is unclear, read the tool with GET https://lovelyrouter.com/v1/tools/<id>. To browse instead, POST https://lovelyrouter.com/v1/tools/discover searches the catalog.
- Show me the plan and its estimated cost (`total_est_cost_usd`) before running anything large.
- Run: POST https://lovelyrouter.com/v1/tools/<id>/run with `{"input": {...}, "max_results": N}`. A 200 has the finished run with `items`; a 202 means it is still running, so poll the `poll` path until `status` is `succeeded`, `failed`, `timed_out` or `stopped`.
- Only delivered results are billed. Keep max_results small on the first run, check the output, then scale up.
- If you support MCP, connect https://lovelyrouter.com/mcp instead (Streamable HTTP, same key; https://lovelyrouter.com/docs/tools/mcp.md) and use suggest_tools, get_tool and run_tool.
- Auth: read my API key from the LOVELY_API_KEY environment variable and send it as `Authorization: Bearer $LOVELY_API_KEY`. Never print or commit the key. If it is not set, ask me to create one at https://lovelyrouter.com/app/keys.
- Billing is prepaid: every call is charged to my balance, so test with a small request before running anything large.
- Every docs page is plain Markdown; the full index is https://lovelyrouter.com/llms.txt.
My task: <the brand or keywords, the platforms, the time window and how to summarize what you find>仕組み
言及を見つける
検索ツールは、キーワード、ハッシュタグ、検索演算子に一致する投稿を返します。X 検索、Reddit 検索、TikTok 検索、Instagram ハッシュタグ、Threads、Google News があります。
会話を取得する
重要な投稿をコメント系ツールに渡します。X のリプライ、Reddit のコメント、TikTok のコメント、Instagram のコメント、YouTube のコメントがあります。
モデルで読み解く
テキストを同じキーで
claude-sonnet-5.5などのモデルに渡し、トピックや感情ごとに分類したり、不満や質問を抜き出したりします。
X でブランドへの言及をモニタリングする
次の実行は、ブランドに言及した今週の英語の投稿を、ブランド自身のアカウントの投稿を除いて収集します。
curl https://lovelyrouter.com/v1/tools/x-search/run \
-H "Authorization: Bearer $LOVELY_API_KEY" \
-H "content-type: application/json" \
-d '{
"input": {
"searchTerms": ["\"brewbox\" OR @brewbox -from:brewbox lang:en since:2026-10-13"],
"queryType": "Latest",
"maxItems": 200
},
"max_results": 200
}'items の各アイテムは 1 件の投稿で、本文、投稿者、エンゲージメント、日時を含みます。searchTerms の各エントリは X の検索ボックスと同じ書き方なので、"exact phrase"、OR、-word、from:、to:、since: と until:、min_faves:、filter:、lang: といった演算子が使えます。queryType には Latest、Top、Latest + Top を指定できます。60 秒を超えた実行は 202 を返すので、ツールを実行するのとおりにポーリングしてください。
言及をレポートにまとめる
同じキーでモデルも呼び出せます。次のスクリプトは 1 週間分の Reddit の投稿を取得し、人々が何に不満を持っているかを Claude に尋ねます。
import json
import os
import anthropic
import requests
KEY = os.environ["LOVELY_API_KEY"]
run = requests.post(
"https://lovelyrouter.com/v1/tools/reddit-search/run",
headers={"Authorization": f"Bearer {KEY}"},
json={"input": {"queries": ["brewbox"], "sort": "new", "timeframe": "week"}, "max_results": 50, "wait": 120},
timeout=150,
).json() # `wait` を過ぎても実行中なら 202 が返る:ポーリングする
client = anthropic.Anthropic(base_url="https://lovelyrouter.com", api_key=KEY)
msg = client.messages.create(
model="claude-sonnet-5.5",
max_tokens=1500,
messages=[{"role": "user", "content": "Group these Reddit posts about Brewbox by topic and sentiment, "
"and quote the three most common complaints:\n" + json.dumps(run["items"])}],
)
print(msg.content[0].text)モデルのトークンは、そのモデルの価格でトークン単位で課金されます。モデルを参照してください。
ツール
検索語・ハッシュタグ・指定アカウントに一致するツイート:本文、投稿者、エンゲージメント、日付。
URL で指定した X/Twitter 投稿への返信:本文、投稿者、エンゲージメント、日付。
クエリまたはサブレディットで Reddit の投稿を取得:タイトル、本文、スコア、コメント数、投稿者、日付。
URL で指定した Reddit スレッドの投稿とコメント。
キーワードやハッシュタグで TikTok 動画を検索:キャプション、再生数、いいね、シェア、投稿者、音楽。
URL で指定した TikTok 動画のコメント。
Instagram のハッシュタグまたはキーワードの投稿・リール:キャプション、いいね、コメント、投稿者、メディア。
URL で指定した Instagram の投稿またはリールのコメント。
YouTube 動画またはショートのコメント:本文、高評価、返信数、投稿者、日付。人気順または新しい順。
Threads ユーザーの投稿、またはキーワード検索の結果。
公開 Telegram チャンネルのメッセージ。
Google ニュースの検索結果の記事(演算子可:"完全一致"、OR、-除外語、site:、intitle:)、期間の指定も可:タイトル、配信元、日付、配信元サイトの記事リンク。
| プラットフォーム | 投稿を探す | 会話を取得する | 知っておきたいフィルター |
|---|---|---|---|
| X | x-search:本文、投稿者、エンゲージメント、日時 | postUrls を指定して x-replies | X の検索演算子、queryType、lang、twitterHandles |
reddit-search:タイトル、本文、スコア、コメント数、投稿者、日時 | スレッドの urls を指定して reddit-comments(返信の階層付き) | subredditName、sort、timeframe | |
| TikTok | tiktok-search:キャプション、再生数、いいね数、シェア数、投稿者、音楽 | 動画 URL を指定して tiktok-comments | dateRange、sortType、location、includeReplies |
instagram-hashtag:キャプション、いいね数、コメント数、投稿者、メディア | instagram-comments:本文、いいね数、返信数 | ハッシュタグの startUrls または keywords、sortOrder | |
| YouTube | YouTube 検索で動画を探す | youtube-comments:本文、いいね数、返信数 | sort:top または latest |
| Threads | mode を search にして threads-posts | mode を thread にして threads-posts | postedAfter、postedBefore |
| Telegram | telegram-channel:公開チャンネルのメッセージ | oldestMessageDate | |
| ニュース | google-news:タイトル、配信元、日時、リンク | 検索演算子、openEndedDateRange、language |
Tip
定期実行ですでに持っている投稿の分まで支払わないよう、各ツールの日付フィルターを使いましょう。X では since:、Reddit では timeframe、Google News では openEndedDateRange、Threads では postedAfter、Telegram では oldestMessageDate です。
レシピ
毎朝、since: を前日にした x-search、"timeframe": "day" を指定した reddit-search、"openEndedDateRange": "1d" を指定した google-news、search モードで postedAfter を指定した threads-posts を実行します。結果をまとめ、モデルに 1 ページの要約を作らせます。
ローンチ動画を公開したら、その動画に "sort": "latest" で youtube-comments を、自社の TikTok 投稿に "includeReplies": true で tiktok-comments を実行します。よくある質問をモデルに洗い出させます。
競合の名前で "sort": "comments" を指定して reddit-search を実行し、最も議論が活発なスレッドに reddit-comments を実行します。
https://www.instagram.com/explore/tags/yourcampaign/ に対して instagram-hashtag を実行し、同じハッシュタグを keywords に入れて "sortType": "DATE_POSTED" を指定した tiktok-search を実行します。
X の検索語に min_faves:100 を加えると、自社に関する投稿のうち拡散し始めたものを捉えられます。あわせて、自社の市場にある公開 Telegram チャンネルを telegram-channel で監視します。
エージェントから実行する
MCP サーバーを接続したら(claude mcp add --transport http lovely-tools https://lovelyrouter.com/mcp --header "Authorization: Bearer $LOVELY_API_KEY")、Claude Code や Cursor に次のように頼みます。「今週 X、Reddit、TikTok で Brewbox について語られたことを探し、最も議論されている投稿 5 件のリプライを読んで、好評な点と不満点をリンク付きでまとめてください。すべての実行に max_results を設定してください。」
料金
ソーシャル系ツールは結果単位、つまり投稿、コメント、動画、メッセージ、記事 1 件ごとに課金され、一部のツールには呼び出し料金もかかります。現在の価格は上のカードに表示されています。実行を開始すると、最大費用(呼び出し料金 + 結果単価 × max_results)が仮押さえされ、実際に返った分で精算されます。失敗した実行は返した結果の分だけを支払うため、何も返さなかった実行は無料です。サブスクリプションはありません。モデルやブラウザエージェントと共通の 1 つのプリペイド残高にチャージするだけです。詳しくは料金をご覧ください。
よくある質問
1 つの API で複数のプラットフォームのブランド言及をモニタリングできますか?+
はい。すべてのプラットフォームは同じエンドポイント POST /v1/tools/{id}/run の背後にあるツールで、同じ API キーとプリペイド残高を使います。入力はツールごとに異なるため、各ツールの入力スキーマを GET /v1/tools/{id} かツールページで確認してください。
API は感情スコアを返しますか?+
いいえ。ツールが返すのは投稿やコメントそのものです。テキストを同じキーで claude-sonnet-5.5 などのモデルに送り、感情、トピック、不満点を必要な形式で出力させてください。
X の高度な検索演算子は使えますか?+
はい。X のツイート検索に使う x-search では、searchTerms リストの各エントリを X の検索ボックスと同じ書き方で指定でき、"exact phrase"、OR、-word、from:、to:、since:、until:、min_faves:、filter:、lang: が使えます。
同じ投稿を二重に収集しないようにするには?+
スケジュールを決めて実行し、各ツールの日付フィルターを前回の実行以降に設定します。X では since:、Reddit では timeframe、Google News では openEndedDateRange、Threads では postedAfter、Telegram では oldestMessageDate です。
AI エージェントにリスニングを任せられますか?+
はい。MCP サーバーを Claude Code、Cursor などの MCP クライアントに接続すると、エージェントが suggest_tools で適切なツールを見つけ、スキーマを読んで実行し、費用は残高から引き落とされます。エージェントには利用上限付きのキーを渡してください。
クリエイターとそのオーディエンスについてはインフルエンサーリサーチ、星評価についてはレビューモニタリング、小紅書(RED)、抖音(Douyin)、微博(Weibo)については中国 SNS データをご覧ください。