google-search-mcp について
google-search-mcp は Playwright ベースの MCP サーバーで、Chromium を使って Google 検索を実行し結果を抽出し、Claude や Cursor などのAIアシスタントにリアルタイム検索を提供します。ボット検出への対策を備え、CAPTCHA 発生時にはヘッドありモードへ切り替えて手動で認証できるほか、ブラウザー状態を保存して再認証の回数を減らします。
主な機能
- 01Playwright による Google 検索と結果抽出
- 02ブラウザーフィンガープリントの偽装とユーザー行動の模倣
- 03CAPTCHA 時にヘッドありモードへ切り替え
- 04ブラウザーセッション状態の保存と再利用
- 05検索結果の言語と地域の指定
活用シーン
- 01AIアシスタントにリアルタイムの Web 検索結果を追加
- 02Cursor でのコーディング中に最新情報を検索
- 03特定の言語や地域の検索結果を使う調査作業
MCP 対応
本プロジェクトは MCP サーバーであり、query、limit、timeout、language、region などのパラメーターを受け取り、構造化された結果を返す検索ツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Google Search MCP
Google 検索用のModel Context Protocolサーバーです。 検索エンジンのボット対策を回避し、Google 検索を実行して結果を抽出する、Playwright ベースの Model Context Protocol(MCP)ツールです。Claude や Cursor などの AI アシスタントにリアルタイム検索機能を提供します。
機能
- ボット対策の回避:ブラウザーのフィンガープリント偽装と実際のユーザー行動のシミュレーションにより、検出を回避します
- CAPTCHA の自動処理:CAPTCHA に遭遇するとヘッドモードに切り替わり、ユーザーが認証を完了できるようにします
- 状態の保持:ブラウザーのセッション状態を保存し、認証を繰り返す必要性を減らします
- 適応性:複数のセレクターの組み合わせを使用し、Google 検索ページの変更に対応します
- MCP 統合:AI アシスタントと簡単に統合できるよう、Model Context Protocol を実装しています
- 多言語対応:さまざまな言語や地域の検索結果に対応しています
Cursor での使用
インストール — グローバル
npx を使用して MCP サーバーを実行します:
npx -y @mcp-server/google-search-mcp@latest
Cursor IDE で次の手順を実行します。
Cursor Settings>MCPに移動します+ Add New MCP Serverをクリックします- フォームに入力します:
- 名前:
google-search(または任意の名前) - 種類:
command - コマンド:
npx -y @mcp-server/google-search-mcp@latest
- 名前:
インストール — プロジェクトごと
プロジェクトに .cursor/mcp.json ファイルを追加します:
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": [
"-y",
"@mcp-server/google-search-mcp@latest"
]
}
}
}
開発
yarn install
プロジェクトのビルド
yarn build
使用方法
MCP サーバーとして実行する
yarn start
MCP Inspector を使用する
サーバーをデバッグするには、MCP Inspector を使用できます:
# First build the project
yarn build
# Start the MCP Inspector and server
npx @modelcontextprotocol/inspector node dist/index.js
パラメーター
検索ツールでは、次のパラメーターを指定できます:
query(必須):検索クエリー文字列limit(任意):返す検索結果の数。デフォルトは 10 ですtimeout(任意):検索処理のタイムアウト(ミリ秒)。デフォルトは 60000 ですlanguage(任意):検索結果の言語。例:zh-CN、en-US。デフォルトは zh-CN ですregion(任意):検索結果の地域。例:cn、com、co.jp。デフォルトは cn です
仕組み
- ツールは Playwright を使用して Chromium ブラウザーを操作し、Google 検索を実行します
- ブラウザーのフィンガープリント偽装と実際のユーザー行動のシミュレーションにより、ボット検出を回避します
- CAPTCHA 認証に遭遇すると、自動的にヘッドモードに切り替わり、ユーザーが認証を完了できるようにします
- 検索結果を抽出し、構造化された形式で返します
- 後続の検索で再利用できるよう、ブラウザーの状態を保存します
高度な設定
ブラウザー状態ファイル
デフォルトでは、ブラウザー状態はユーザーのホームディレクトリにある .google-search-browser-state.json ファイルに保存されます。パラメーターでこのパスを変更できます。
言語と地域の設定
パラメーターで検索結果の言語と地域を指定できます:
// English (US) search results
"language": "en-US", "region": "com"
// Japanese search results
"language": "ja-JP", "region": "co.jp"
// Chinese (Simplified) search results
"language": "zh-CN", "region": "cn"
注意事項
- 初回使用時に CAPTCHA 認証に遭遇した場合、システムは自動的にヘッドモードに切り替わり、認証を完了できるようにします
- 認証後、システムは状態ファイルを保存するため、次回以降の検索がスムーズになります
- 検索リクエストの頻度が高すぎると、Google のレート制限が適用される場合があります
- このツールは学習と研究を目的としています。Google の利用規約を遵守してください
ライセンス
MIT
免責事項
このツールは学習と研究を目的としています。このツールを使用して Google やその他の検索エンジンにアクセスする際は、関連する利用規約および法規制を遵守してください。このツールの使用に起因する問題について、作者は責任を負いません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。