🚀 FetchSERP MCP Server
FetchSERP MCP Serverは、SEO、SERP分析、ウェブスクレイピング、キーワードリサーチのためのFetchSERP APIを公開するModel Context Protocol (MCP) サーバーです。このサーバーを利用することで、様々なSEO関連のタスクを効率的に実行できます。
🚀 クイックスタート
このMCPサーバーを使用するには、FetchSERP APIトークンが必要です。まずはhttps://www.fetchserp.comでサインアップしてAPIトークンを取得してください。新規ユーザーには250の無料クレジットが自動的に付与されます。
✨ 主な機能
このMCPサーバーは、すべてのFetchSERP APIエンドポイントにアクセスできるようにします。
SEO & 分析
- ドメイン分析:バックリンク、ドメイン情報(DNS、WHOIS、SSL、テクノロジースタック)を取得します。
- キーワードリサーチ:検索量、キーワード提案、ロングテールキーワード生成を行います。
- SEO分析:ウェブページの包括的なSEO分析を行います。
- AI分析:カスタムプロンプトを使用したAIによるウェブページ分析を行います。
- Moz統合:ドメイン権威とMozメトリクスを取得します。
SERP & 検索
- 検索結果:Google、Bing、Yahoo、DuckDuckGoからSERP結果を取得します。
- AI概要:JavaScriptレンダリングを使用したGoogleのAI概要を取得します。
- 拡張結果:HTMLまたはテキストコンテンツ付きのSERPを取得します。
- ランキングチェック:特定のキーワードに対するドメインのランキングをチェックします。
- インデックス化チェック:ページがインデックス化されているかを確認します。
ウェブスクレイピング
- 基本的なスクレイピング:JavaScriptを使用せずにウェブページをスクレイピングします。
- JSスクレイピング:ページ上でカスタムJavaScriptを実行します。
- プロキシスクレイピング:国別のプロキシを使用してスクレイピングします。
- ドメインスクレイピング:ドメインから複数のページをスクレイピングします。
ユーザー管理
- アカウント情報:APIクレジットとユーザー情報を確認します。
📦 インストール
インストールは必要ありません! このMCPサーバーはnpxを使用してGitHubから直接実行できます。
FetchSERP APIトークンを取得するには:https://www.fetchserp.comでサインアップしてAPIトークンを取得してください。新規ユーザーには250の無料クレジットが付与され、すぐに使用を開始できます。
💻 使用例
基本的な使用法
このMCPサーバーは2つのトランスポートモードをサポートしています。
npxモード(オプション1)
- ✅ インストール不要
- ✅ GitHubから常に最新バージョンを取得
- ✅ 個々のユーザーに最適
- ✅ Claude Desktopでローカルで実行
HTTPモード(オプション2)
- ✅ リモートデプロイ可能
- ✅ 複数のクライアントが接続できる
- ✅ 企業/チーム環境に適している
- ✅ 集中型サーバー管理
- ✅ 単一のAPIキー認証(FetchSERPトークン)
- ✅ スケーラブルなアーキテクチャ
設定
オプション1:npxを使用する(ローカル/リモートGitHub)
このサーバーをMCPクライアントの設定に追加します。例えば、Claude Desktopでgithubレジストリを使用する場合:
{
"mcpServers": {
"fetchserp": {
"command": "npx",
"args": [
"github:fetchSERP/fetchserp-mcp-server-node"
],
"env": {
"FETCHSERP_API_TOKEN": "your_fetchserp_api_token_here"
}
}
}
}
またはnpmレジストリを使用する場合:
{
"mcpServers": {
"fetchserp": {
"command": "npx",
"args": ["fetchserp-mcp-server"],
"env": {
"FETCHSERP_API_TOKEN": "your_fetchserp_api_token_here"
}
}
}
}
オプション2:Claude APIとMCPサーバーを使用する
ClaudeのAPIとデプロイされたMCPサーバーをプログラムで使用する場合:
const claudeRequest = {
model: "claude-sonnet-4-20250514",
max_tokens: 1024,
messages: [
{
role: "user",
content: question
}
],
mcp_servers: [
{
type: "url",
url: "https://mcp.fetchserp.com/sse",
name: "fetchserp",
authorization_token: FETCHSERP_API_TOKEN,
tool_configuration: {
enabled: true
}
}
]
};
const response = await httpRequest('https://api.anthropic.com/v1/messages', {
method: 'POST',
headers: {
'x-api-key': CLAUDE_API_KEY,
'anthropic-version': '2023-06-01',
'anthropic-beta': 'mcp-client-2025-04-04',
'content-type': 'application/json'
}
}, JSON.stringify(claudeRequest));
オプション3:OpenAI APIとMCPサーバーを使用する
OpenAIのAPIとデプロイされたMCPサーバーをプログラムで使用する場合:
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
const res = await openai.responses.create({
model: "gpt-4.1",
tools: [
{
type: "mcp",
server_label: "fetchserp",
server_url: "https://mcp.fetchserp.com/sse",
headers: {
Authorization: `Bearer ${FETCHSERP_API_TOKEN}`
}
}
],
input: question
});
console.log(res.choices[0].message);
オプション4:Dockerを使用する
GitHub Container Registryから事前構築されたDockerイメージを使用してコンテナ化デプロイを行います。
{
"mcpServers": {
"fetchserp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"FETCHSERP_API_TOKEN",
"ghcr.io/fetchserp/fetchserp-mcp-server-node:latest"
],
"env": {
"FETCHSERP_API_TOKEN": "your_fetchserp_api_token_here"
}
}
}
}
Dockerの特長
- ✅ コンテナ化デプロイ
- ✅ クロスプラットフォーム互換性(ARM64 & AMD64)
- ✅ 分離された環境
- ✅ 簡単なスケーリングとデプロイ
- ✅ GitHubからの自動ビルド
手動でのDockerの使用
docker pull ghcr.io/fetchserp/fetchserp-mcp-server-node:latest
docker run -i --rm \
-e FETCHSERP_API_TOKEN="your_token_here" \
ghcr.io/fetchserp/fetchserp-mcp-server-node:latest
docker run -p 8000:8000 \
-e FETCHSERP_API_TOKEN="your_token_here" \
-e MCP_HTTP_MODE=true \
ghcr.io/fetchserp/fetchserp-mcp-server-node:latest
📚 ドキュメント
ドメイン & SEO分析
get_backlinks
ドメインのバックリンクを取得します。
- domain (必須):対象のドメイン
- search_engine:google、bing、yahoo、duckduckgo(デフォルト: google)
- country:国コード(デフォルト: us)
- pages_number:検索するページ数 1 - 30(デフォルト: 15)
get_domain_info
包括的なドメイン情報を取得します。
get_domain_emails
ドメインからメールアドレスを抽出します。
- domain (必須):対象のドメイン
- search_engine:検索エンジン(デフォルト: google)
- country:国コード(デフォルト: us)
- pages_number:検索するページ数 1 - 30(デフォルト: 1)
get_playwright_mcp
GPT - 4.1を使用してPlaywright MCPサーバーを介してブラウザをリモートコントロールします。
- prompt (必須):ブラウザのリモートコントロールに使用するプロンプト
このエンドポイントは、GPT - 4.1を使用してPlaywright MCPサーバーを介してブラウザをリモートコントロールします。
get_webpage_seo_analysis
ウェブページの包括的なSEO分析を行います。
get_webpage_ai_analysis
AIによるウェブページ分析を行います。
- url (必須):分析するURL
- prompt (必須):分析用のプロンプト
get_moz_analysis
Mozのドメイン権威とメトリクスを取得します。
キーワードリサーチ
get_keywords_search_volume
キーワードの検索量を取得します。
- keywords (必須):キーワードの配列
- country:国コード
get_keywords_suggestions
キーワード提案を取得します。
- url:分析するURL(キーワードが提供された場合はオプション)
- keywords:シードキーワードの配列(URLが提供された場合はオプション)
- country:国コード
get_long_tail_keywords
ロングテールキーワードを生成します。
- keyword (必須):シードキーワード
- search_intent:informational、commercial、transactional、navigational(デフォルト: informational)
- count:生成する数 1 - 500(デフォルト: 10)
SERP & 検索
get_serp_results
検索エンジンの結果を取得します。
- query (必須):検索クエリ
- search_engine:google、bing、yahoo、duckduckgo(デフォルト: google)
- country:国コード(デフォルト: us)
- pages_number:検索するページ数 1 - 30(デフォルト: 1)
get_serp_html
HTMLコンテンツ付きのSERP結果を取得します。
get_serp_text
テキストコンテンツ付きのSERP結果を取得します。
get_serp_ai_mode
AI概要とAIモードの応答付きのSERPを取得します。
- query (必須):検索クエリ
- country:国コード(デフォルト: us)
このエンドポイントは、クエリに対するAI概要とAIモードの応答を返します。2段階のプロセスよりも信頼性は低いですが、30秒以内に結果を返します。
check_page_indexation
ドメインがキーワードでインデックス化されているかを確認します。
- domain (必須):対象のドメイン
- keyword (必須):検索キーワード
get_domain_ranking
キーワードに対するドメインのランキングを取得します。
- keyword (必須):検索キーワード
- domain (必須):対象のドメイン
- search_engine:検索エンジン(デフォルト: google)
- country:国コード(デフォルト: us)
- pages_number:検索するページ数 1 - 30(デフォルト: 10)
ウェブスクレイピング
scrape_webpage
JavaScriptを使用せずにウェブページをスクレイピングします。
scrape_domain
ドメインから複数のページをスクレイピングします。
- domain (必須):対象のドメイン
- max_pages:スクレイピングする最大ページ数、最大200(デフォルト: 10)
scrape_webpage_js
カスタムJavaScriptを使用してウェブページをスクレイピングします。
- url (必須):スクレイピングするURL
- js_script (必須):実行するJavaScriptコード
scrape_webpage_js_proxy
JavaScriptとプロキシを使用してウェブページをスクレイピングします。
- url (必須):スクレイピングするURL
- country (必須):プロキシの国
- js_script (必須):実行するJavaScriptコード
ユーザー管理
get_user_info
ユーザー情報とAPIクレジットを取得します。
📄 APIトークン
このサーバーを使用するには、FetchSERP APIトークンが必要です。
APIトークンを取得する方法:
- https://www.fetchserp.comでサインアップします。
- 新規ユーザーは自動的に250の無料クレジットを受け取り、使用を開始できます。
- APIトークンはダッシュボードで利用可能になります。
トークンを環境変数として設定します:
export FETCHSERP_API_TOKEN="your_token_here"
🔧 技術詳細
サーバーには包括的なエラーハンドリングが含まれています:
- 欠落しているAPIトークンの検証
- API応答のエラーハンドリング
- 入力検証
- 適切なMCPエラー応答
Dockerデプロイ
docker build --platform=linux/amd64 -t olivier86/fetchserp-mcp-server-node:latest --push .
docker build --platform=linux/amd64 -t ghcr.io/fetchserp/mcp-server-node:latest --push .
docker run -p 8000:8000 olivier86/fetchserp-mcp-server-node:latest
トンネリングを開始する
nohup ngrok http 8000 --domain guinea-dominant-jolly.ngrok-free.app > /var/log/ngrok.log 2>&1 &
npm login
npm publish --access public