SEO Tools MCP Server について
SEO Tools MCP Server は、DataForSEO API の多数のエンドポイントを LLM が呼び出せるツールとして公開する stdio 方式の MCP サーバーです。キーワード、SERP、バックリンクの調査を自然言語で行いたい利用者に向いており、環境変数でツール一覧を絞り込めます。
主な機能
- 01複数の DataForSEO API カテゴリーにわたるエンドポイント
- 02MCP クライアント連携のための stdio トランスポート
- 03環境変数によるモジュールとツールの絞り込み
- 04Zod スキーマによる型安全なツール定義
- 05任意で利用できる Local Falcon のローカル順位ツール
活用シーン
- 01キーワードの検索ボリュームと関連キーワードの取得
- 02ドメインのバックリンクプロファイルと参照ドメインの分析
- 03Google マップ検索におけるローカル事業者の順位確認
MCP 対応
本サーバーは stdio 経由で DataForSEO と任意の Local Falcon のエンドポイントを MCP クライアントに公開し、各エンドポイントをツールとして提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
SEO ツール MCP サーバー
SEO API に対応した包括的な stdio MCP(Model Context Protocol)サーバーです。このサーバーを使うと、LLM(大規模言語モデル)が DataForSEO API の機能やその他の SEO ツールを利用できます。
注意
バージョン 1.1.0 には、ラッパーのパスを DataForSEO の公式ドキュメントと照合して見つかった約 40 件のエンドポイントの不具合を修正する内容が含まれています。すべての修正内容については、CHANGELOG.md をご覧ください。
概要
SEO Tools MCP Server を使うと、Claude などの LLM とさまざまな SEO API をシームレスに連携でき、自然言語でのやり取りを通じて SEO 分析、キーワード調査、バックリンク分析をはじめとする多くの SEO 関連タスクを実行できます。
この実装では、DataForSEO API の主要なエンドポイントすべてを MCP ツールとして公開し、LLM が呼び出して特定の SEO データを取得できるようにしています。サーバーはトランスポート層に stdio を使用しているため、さまざまな LLM プラットフォームと簡単に連携できます。
特長
- DataForSEO API のエンドポイントを幅広くカバー(このバージョンで修正された不具合については CHANGELOG.md をご覧ください)
- Local Falcon などのサードパーティ製 SEO ツールとの連携に対応(任意)
- 連携が容易な stdio トランスポート
- 認証の処理
- 詳細なエラー報告
- Zod スキーマを使った型安全なツール定義
- 新しい API 連携を追加できる拡張可能なアーキテクチャ
- 環境変数によるモジュールとツールの選択的なフィルタリング
Data for Seo に登録する
https://dataforseo.com/?aff=200885
実装済みの API カテゴリ
DataForSEO API
- SERP API - Google、Bing、Yahoo などの検索エンジンの検索結果データ
- Keywords Data API - キーワード調査、候補、検索ボリュームデータ
- DataForSEO Labs API - 高度な SEO 分析、ドメイン比較、キーワード分析
- Backlinks API - バックリンクプロファイル、参照ドメイン、アンカーテキスト分析
- OnPage API - ウェブサイト監査、コンテンツ分析、技術的な SEO チェック
- Domain Analytics API - 技術スタックの検出、ドメインデータ分析
- Content Analysis API - コンテンツの品質評価、セマンティック分析
- Content Generation API - AI を活用したコンテンツ生成ツール
- Merchant API - Amazon と Google Shopping の E コマースデータ
- App Data API - Google Play と App Store のモバイルアプリデータ
- Business Data API - Google My Business、Trustpilot などのビジネス掲載データ
- AI Optimization API - ChatGPT、Claude、Gemini、Perplexity の LLM 応答、AI スクレイパー、AI キーワードデータ
Local Falcon API(任意)
- グリッドポイントの計算 - ローカル検索順位分析用のグリッド座標を生成
- GMB の場所を検索 - クエリを使って Google My Business の場所を検索
- 座標地点の検索順位を取得 - 指定した座標におけるビジネスの検索順位を確認
- 座標地点でキーワードを検索 - 特定の場所で検索語句をテスト
- グリッド検索を実行 - グリッドベースのローカル検索順位分析を一括実行
インストール
# Clone the repository
git clone https://github.com/Skobyn/dataforseo-mcp-server.git
# Change to the project directory
cd dataforseo-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
使い方
この MCP サーバーを使用するには、利用するサービスの API 認証情報が必要です。
DataForSEO を使ってサーバーを実行する
# Set environment variables for DataForSEO authentication
export DATAFORSEO_LOGIN="your_login"
export DATAFORSEO_PASSWORD="your_password"
# Run the server
npm start
DataForSEO と Local Falcon を使ってサーバーを実行する
# Set environment variables for all API authentications
export DATAFORSEO_LOGIN="your_login"
export DATAFORSEO_PASSWORD="your_password"
export LOCALFALCON_API_KEY="your_localfalcon_api_key"
# Optional: Set custom Local Falcon API URL if needed
# export LOCALFALCON_API_URL="https://custom-localfalcon-url.com/api"
# Run the server
npm start
モジュールとツールのフィルタリング
このサーバーはデフォルトで数百のツールを公開します。LLM と使用する場合、ツールの全リストによってコンテキストウィンドウを大きく消費します。環境変数を使って必要なモジュールやツールだけを有効にし、公開するツールの数を減らせます。
フィルタリングする理由
- コンテキストの使用量を削減
- LLM によるツールの検出を高速化
- より的を絞った応答
モジュールで絞り込む
ENABLED_MODULES を使用すると、特定の API カテゴリーのみを有効にできます(カンマ区切り、大文字と小文字は区別されません)。
export ENABLED_MODULES="SERP,BUSINESS_DATA,LABS"
利用可能なモジュール:
SERP- 検索エンジンの結果KEYWORDS_DATA- キーワード調査LABSまたはDATAFORSEO_LABS- 高度な SEO 分析BACKLINKS- バックリンク分析ONPAGE- ウェブサイト監査DOMAIN_ANALYTICS- ドメインデータCONTENT_ANALYSIS- コンテンツ評価CONTENT_GENERATION- AI コンテンツ生成MERCHANT- E コマースデータAPP_DATA- モバイルアプリデータBUSINESS_DATA- ビジネスリスティングAI_OPTIMIZATION- LLM の応答と AI データ
個別のツールで絞り込む
ENABLED_TOOLS を使用すると、特定のツールを細かく制御できます(カンマ区切り、大文字と小文字は区別されません)。
export ENABLED_TOOLS="serp_google_maps_live,business_data_google_my_business_info"
どちらの変数も設定されていない場合、デフォルトですべてのモジュールとツールが有効になります。
モジュール単位のサブスクリプションと 404
DataForSEO のアクセス権は、多くの場合、すべてを一括で許可するのではなく、モジュールごとに付与されます。そのため、一部のエンドポイントは動作しても、ほかのエンドポイントは 404 を返すことがあります。
重要な解釈ルール:
SERP、App Data、DataForSEO Labs App Store、Content Generationなど、利用可能とされるライブエンドポイントでの404は、現在のアカウントでそのモジュールが有効になっていないことを意味する場合があります。- これは必ずしも MCP サーバーのバグや、エンドポイントパスの誤りを意味するものではありません。
- ロケーションや言語などの無料の探索用エンドポイントは、同じ大きなカテゴリー内の有料ライブエンドポイントが利用できない場合でも、引き続き動作することがあります。
サーバーは、既知のモジュール範囲に関する 404 応答を、より明確なメッセージに正規化するようになりました。
DataForSEO module not enabled: <module> ...
このメッセージが表示された場合は、DataForSEO ダッシュボードでモジュールを有効にするか、現在のアカウントですでに有効になっているモジュールのツールに切り替えてください。
Claude またはその他の LLM での使用
このサーバーは、LLM が標準化された方法で外部システムとやり取りできるようにする Model Context Protocol を実装しています。Claude で使用するには、各 LLM プラットフォーム固有の MCP 実装に従って統合する必要があります。
使用例については、examples ディレクトリをご覧ください。
開発
# Run in development mode with hot reloading
npm run dev
# Run tests
npm test
使用例
SEO Tools MCP Server の使い方を示すサンプルコードについては、examples ディレクトリをご覧ください。
基本的な例では、次の方法を説明しています。
- サーバーの起動
- クライアントからの接続
- さまざまな API エンドポイントへの呼び出し
- 結果の処理
利用可能なツール
このサーバーは、統合されたすべての API カテゴリーにわたり、数百のツールを提供します。以下に、よく使われるツールの例を示します。
DataForSEO SERP API ツール
serp_google_organic_live- Google のオーガニック検索結果を取得serp_google_organic_task_post- Google のオーガニック検索タスクを作成serp_google_maps_live- Google Maps の検索結果を取得
DataForSEO Keywords Data ツール
keywords_google_ads_search_volume- キーワードの検索ボリュームを取得keywords_google_ads_keywords_for_site- ドメインのキーワード候補を取得keywords_google_trends_explore- キーワードの経時的なトレンドを調査
DataForSEO Labs ツール
labs_google_keyword_ideas- シードキーワードを基にキーワード候補を取得labs_google_related_keywords- 関連キーワードを取得labs_google_domain_rank_overview- ドメインのランキング概要を取得
DataForSEO Backlinks ツール
backlinks_summary- ドメインのバックリンクプロファイルの概要を取得backlinks_backlinks- ドメインのバックリンク一覧を取得backlinks_referring_domains- 対象の参照ドメインを取得backlinks_history- 対象の過去のバックリンクデータを取得backlinks_timeseries_summary- バックリンクの時系列データを取得backlinks_bulk_new_lost_backlinks- 複数の対象について、新規および失われたバックリンクを取得backlinks_bulk_new_lost_referring_domains- 複数の対象について、新規および失われた参照ドメインを取得backlinks_bulk_pages_summary- 複数の対象について、ページの概要を取得
DataForSEO AI 最適化ツール
ai_chatgpt_models- 利用可能な ChatGPT モデルの一覧を取得しますai_chatgpt_llm_responses_live- ChatGPT からライブ応答を取得しますai_chatgpt_scraper_locations- ChatGPT スクレイパーで利用可能な地域を取得しますai_chatgpt_scraper_languages- ChatGPT スクレイパーで利用可能な言語を取得しますai_claude_models- 利用可能な Claude モデルの一覧を取得しますai_claude_llm_responses_live- Claude からライブ応答を取得しますai_gemini_models- 利用可能な Gemini モデルの一覧を取得しますai_gemini_llm_responses_live- Gemini からライブ応答を取得しますai_perplexity_models- 利用可能な Perplexity モデルの一覧を取得しますai_perplexity_llm_responses_live- Perplexity からライブ応答を取得しますai_keyword_data_search_volume_live- AI キーワードの検索ボリュームデータを取得しますai_keyword_data_locations_and_languages- AI キーワードデータで利用可能な地域と言語を取得します
Local Falcon ツール(設定されている場合)
localfalcon_calculate_grid_points- 基準座標の周囲にグリッドポイントを計算しますlocalfalcon_search_gmb_locations- Google マイビジネスの場所を検索しますlocalfalcon_get_ranking_at_coordinate- 指定した座標でのビジネスランキングを取得しますlocalfalcon_keyword_search_at_coordinate- 指定した場所でキーワードを検索しますlocalfalcon_run_grid_search- ローカルランキングのグリッド検索を実行します
ツールの全一覧
利用可能なすべてのツールとそのパラメーターの完全な一覧は、src/api ディレクトリにある実装を確認してください。
サーバーの拡張
このサーバーは拡張できるように設計されています。追加の SEO API に対応するには、次の手順を実行します。
src/api/に連携用の新しいディレクトリを作成します- クライアントの処理とツールの登録を実装します
src/index.tsに連携機能を追加します- 認証用の環境変数処理を追加します
テンプレートとして、src/api/localfalcon/ の Local Falcon 連携を参照してください。
セキュリティ
- 認証情報(
DATAFORSEO_LOGIN、DATAFORSEO_PASSWORD、LOCALFALCON_API_KEY)は環境変数からのみ読み込まれます。これらをコミットしないでください。 .env.exampleを.envにコピーし、独自の認証情報を入力してください。.gitignoreは.env、.env.*.local、その他の機密情報を保存するパスを除外します。- コントリビューションを行う前に、
npm auditを実行し、重大または深刻な脆弱性を修正してください。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
