Google data (Trends, YouTube, Ads Transparency, Play)
ローカルGoogle data (Trends, YouTube, Ads Transparency, Play) について
Google Trends、YouTube、Ads Transparency Center、Google Playの公開データを取得するMCPサーバーです。APIキー不要で、ディスクキャッシュとリクエスト間隔の調整により、対話的な調査や競合確認に対応します。
主な機能
- 01Trendsの関心度・比較・急上昇情報
- 02YouTubeチャンネル一覧と検索
- 03Ads Transparencyの広告主・広告検索
- 04Google Playのレビュー取得
- 05ディスクキャッシュとリクエスト間隔調整
活用シーン
- 01Trendsで最大5語を比較
- 02チャンネルの動画やShortsを確認
- 03広告主の現行・過去の広告を調査
- 04地域別のアプリレビューを確認
MCP 対応
Trends、YouTube、Ads Transparency、Playレビューを含む7つのGoogleデータツールを、stdio経由でMCPクライアントに提供します。リクエストは実行元のIPから送信され、結果はローカルにキャッシュされます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| geo | string | いいえ | 国または下位地域のコード(US、VN、US-CA)。空欄 = 全世界。 |
| keyword | string | はい | 単一の検索語句。 |
| timeframe | string | いいえ | Google 独自の期間文字列:'today 12-m'、'today 5-y'、'now 7-d'、'all'、または '2025-01-01 2025-12-31'。 |
詳細
google-data-mcp
通常の HTTP に応答する、Google の 4 つのデータ領域向け MCP サーバーです。API キーもブラウザーもスクレイピングサービスも不要です:
| ツール | 取得できる内容 |
|---|---|
google_trends_interest | 1 つのキーワードの時系列での関心度(0~100、週次または時間単位のデータポイント) |
google_trends_compare | 1 回のリクエストで最大 5 つのキーワードを比較するため、値を比較できます |
google_trends_trending | 国ごとの現在のトレンド |
youtube_listing | チャンネルのショート動画、チャンネルの動画、または検索結果 |
google_ads_advertisers | Ads Transparency Center の広告主を名前で検索 |
google_ads_creatives | 広告主が配信するすべての広告(形式、プレビュー URL、初回・最終表示日) |
google_play_reviews | アプリのレビュー(評価、テキスト、日付、バージョン、開発者の返信) |
インストール前にお読みください
すべてのリクエストはお使いのマシンの IP アドレスから送信され、Google の IP ごとの利用枠は数時間にわたって累積します。 これは末尾に小さく記載する注意事項ではありません。このサーバーが目的に適しているかどうかを決める、最も重要な点です。
実測では、間隔を空けないリクエストは 93 件目でレート制限されました。また、数時間にわたって間隔を空けたリクエストを約 130 件送信したところ、同じ IP アドレスは新しいセッションの最初のリクエストから拒否されました。このサーバーを開発している間に、作者の IP アドレスは自宅の接続とデータセンターの VPS の両方とも、その日のうちに Google Trends から拒否されました。
そのため、このサーバーはすべての結果をディスク(~/.cache/google-data-mcp)にキャッシュし、リクエストの送信間隔を調整します。対話的な利用、つまりエージェントにいくつか質問したり、トピックを調べたり、競合を確認したりするには十分です。大量処理には不十分であり、ローカルコードだけで 1 つの IP アドレスを複数の IP アドレスのように扱うことはできません。
大量のデータが必要な場合は、同じクライアントをローテーションプロキシ経由で Apify Actors として実行できます: Google Trends · YouTube · Ads Transparency。
意図的に対応していない機能
YouTube の文字起こし。 利用できそうに見えます。動画再生ページには今でも字幕トラックが表示されますが、api/timedtext は 0 バイトを返し、/youtubei/v1/get_transcript はページ自身の INNERTUBE_CONTEXT と visitorData を送信しても Precondition check failed を返します。ANDROID および IOS のプレーヤークライアントも同様に拒否されます。このサーバーでは文字起こしツールを提供できると約束できないため、用意していません。
インストール
pipx install google-data-mcp
# or: pip install google-data-mcp
# or, without installing anything: uvx google-data-mcp
次に、お使いの MCP クライアントに登録します。Claude Code の場合:
claude mcp add google-data -- google-data-mcp
または、MCP クライアントの設定に手動で追加します:
{
"mcpServers": {
"google-data": {
"command": "google-data-mcp"
}
}
}
データに関する注意事項
- Trends の値は、単一のリクエスト内での相対値です。 個別に実行した 2 回の
google_trends_interest呼び出しの値は比較できません。そのためのツールがgoogle_trends_compareです。Google は比較対象を 5 件までに制限し、6 件目を黙って除外するため、6 件目は無視されるのではなく拒否されます。 - Play のレビューはロケールごとに異なります。
hl/glの各ペアは異なるレビューセットを返します。同じアプリでも、6 つのロケールから合計 120 件の固有のレビューが得られました。同じ言語でページをさらに読み込むより、ロケールを変えて対象範囲を広げてください。 - レビュー投稿者の情報は、デフォルトでは省略されます。 レコードには投稿者名、アバター、Google アカウント ID が含まれていますが、製品に関する質問には評価、テキスト、日付、バージョンで対応できます。本当に名前が必要な場合は
include_authorを設定してください。 - 広告が 0 件という結果は正しい場合があります。 Google は配信を停止した広告主も保持し、広告件数を引き続き報告するため、
adsリストが空でも、宣言された件数が 0 以外であれば、それはエラーではなく情報です。 - トレンドキーワードの
searchVolumeは、正確な件数ではなく、Google 独自の丸められた区分です。
法的事項
これらは一般公開ページですが、いずれも公式の公開 API はなく、各プラットフォームの利用規約では自動アクセスが制限されています。出力の使用方法については、利用者自身が責任を負います。デフォルトでは個人データを収集しません。
開発
python -m venv .venv && .venv/bin/pip install -e .
.venv/bin/python -m google_data_mcp # speaks MCP over stdio
各クライアントは標準ライブラリのみを使用しており、単独で動作を確認できます。これは、Google が何か変更したかどうかを確認する最も手早い方法です。
.venv/bin/python -c "from google_data_mcp.play import PlayClient; print(len(PlayClient().reviews('com.spotify.music', limit=40)))"
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。