🎯 カスタマイズ可能で検出回避型のクラウドブラウザ。自社開発のChromiumを搭載し、ウェブクローラーAIエージェント向けに設計されています。👉今すぐ試す
ブログに戻ります

GitHub Copilot CLIにウェブ検索を追加する方法:Scrapeless MCP統合ガイド

Ethan Brown
Ethan Brown

Advanced Bot Mitigation Engineer

27-May-2026

主なポイント:

  • 1つの設定ファイルでCopilot CLIにライブウェブアクセスを接続。 ~/.copilot/mcp-config.jsonに1つのscrapelessブロックを追加するだけで、ターミナルエージェントはGoogle SERPスクレイパー、トレンドスクレイパー、HTML/Markdown/スクリーンショットページヘルパー、完全なクラウドブラウザ自動化機能を得ます — SDKコード不要、実行する追加サービスも不要です。
  • エージェントは、プレーンなプロンプトからブラウザを検索、レンダリング、および制御。 自然言語でGoogleを検索したり、JavaScript重視のページをレンダリングしたり、マルチステップフローをクリックしたりするように依頼すると、ローカルファイルやトレーニングカットオフの知識に制限されることなく、正しいツールコールを段階的に構成します。
  • 住宅用プロキシと検出防止はクラウドサイドで処理。 すべてのリクエストは、195か国以上に住宅用プロキシを持つScrapelessの検出防止クラウドブラウザを経由するため、エージェントは商用サイトでレンダリングされた、使用可能な応答を取得でき、マシン上でのプロキシやフィンガープリントの設定は不要です。
  • Copilotのコーディングツールと同じセッションで実行。 Scrapelessツールは、Copilot CLIのファイル編集、ターミナルコマンド、およびコード生成の横に位置し、単一のエージェントのターンでライブウェブをスクレイピングして、その結果をあなたが作成しているコードに直接書き込むことができます。
  • SERP、ステートレススクレイピング、およびブラウザ自動化にわたる21のツール。 Scrapeless MCPサーバーは、google_searchgoogle_trendsscrape_html/scrape_markdown/scrape_screenshot、さらに16のbrowser_*自動化ツールを公開しており — エージェントのプランナーがターンごとに利用する単一の名前空間です。
  • HTTPストリーミングトランスポートはホストされたセットアップをカバー。 ワークステーションではデフォルトでnpxを介して標準入力を使用します。リモート開発コンテナやCIランナーで子プロセスを生成するのが煩雑な場合は、同じ設定をストリーミング可能なHTTPエンドポイントに向けてください。
  • 無料で開始可能。 新しいScrapelessアカウントには、無料のスクレイピングブラウザランタイムが含まれています — Scrapelessでサインアップしてください。

はじめに:あなたのターミナルエージェント、ライブウェブに目を向ける

GitHub Copilot CLIは2026年2月25日にターミナルネイティブなコーディングエージェントとして一般提供が開始され、デフォルトでClaude Sonnet 4.5を使用します。リポジトリを読み込み、ファイルを編集し、コマンドを実行し、プロジェクトを推論します — すべてシェルを離れることなく行います。箱から出してすぐには、ライブウェブを見ることはできません。知識はトレーニングカットオフとディスク上のファイルで止まっています。

このギャップは、タスクが現在の公開データを必要とするときに顕著になります。エージェントはライブSERPを引き出したり、競争相手の価格ページを読み取ったり、最新の変更履歴を確認したり、JavaScript専用のアプリをレンダリングしたりすることはできないため、回答は古くなり、時間に敏感なものはブラウザから手動でコピー&ペーストする必要があり、カットオフ以降に公開されたものに対してはエージェントは盲目です。

この記事では、Scrapeless MCPサーバーをGitHub Copilot CLIに接続することで、そのギャップを埋めます。1つの設定ブロックで、エージェントはGoogle検索、JavaScriptレンダリング、完全なクラウドブラウザを利用でき、既にコードのために受け取っている自然言語プロンプトを介してすべてアクセス可能です。他のMCPクライアントを通じて同じScrapelessのサーフェスを取得するには、Google AntigravityのウォークスルーMCPサーバーのウォークスルーをご覧ください。


できること

  • ターミナルでのライブSERPリサーチ。 エージェントにクエリのためにgoogle_searchを実行させ、トップ結果をJSONとして返すよう依頼することで、リサーチがシェル内で行われ、別のブラウザタブではなくなります。
  • 競合他社と価格のスナップショット。 競合他社のURLをプロンプトに入力し、エージェントに価格ページをレンダリングさせ、プラン名、価格、および機能を構造化された記録に抽出させ、それをコードの隣にドロップすることができます。
  • コードにフィードするドキュメントと変更履歴のルックアップ。 エージェントにライブラリの現在のドキュメントやリリースノートをクリーンなマークダウンとして取得させ、古くなったAPIの記憶ではなくレンダリングされたテキストに対して書き込むことができます。
  • 市場やトレンドのチェック。 google_trendsを使用して、ターゲット地域におけるトピックの関心信号を引き出し、その後、現在の証拠をもとに機能コピー、コンテンツテンプレート、または実験アイデアを生成します。
  • JSページの抽出を型付きレコードに。 エージェントをJavaScriptレンダリングされたページに向けると、クラウドブラウザがそれを水分補給し、エージェントがあなたが書いているスクリプト用に結果を型付きオブジェクトとして解析します。
  • マルチステップのブラウザフロー。 browser_gotobrowser_clickbrowser_typebrowser_scrollを組み合わせて、エージェントがページネーションをナビゲートしたり、パネルを展開したり、ウィザードをステップして抽出することができます。
  • レビューのためのスクリーンショットキャプチャ。 scrape_screenshotまたはbrowser_screenshotを使用して、エージェントが会話に添付したり、ワークスペースに保存したりできる画像としてレンダリングページを取得します。
  • 検索後に読むパイプライン。 google_searchscrape_markdownを組み合わせて、エージェントがトップ結果を見つけ、それぞれを読み取り、単一のターミナルターンで要約します。
    Scrapelessでは、適用される法律、規制、およびウェブサイトのプライバシーポリシーを厳守しながら、公開されているデータにのみアクセスします。この投稿の内容は、デモンストレーション目的のみです。

Scrapeless MCPサーバの利点

Scrapeless MCPサーバは、AIエージェントとライブウェブの間のカスタマイズ可能な検出回避ブリッジです。特にGitHub Copilot CLIの場合、以下の機能を提供します:

  • JavaScriptレンダリングを備えた検出回避クラウドブラウザ。 ページは抽出前に完全なScrapeless Scraping Browserで水和されるため、SPA、無限スクロールフィード、および遅延読み込みパネルは、browser_goto + browser_get_htmlの第一級のターゲットになります。
  • 195か国以上の住宅プロキシ。 地理的に制約されたクエリは、ローカルユーザーが見るリストを返し、プロキシ出口は完全にScrapeless側で処理されます。
  • npx経由の1つのstdioコマンド、SDKコードは不要。 サーバはnpx -y scrapeless-mcp-serverから子プロセスとして起動され、ビルド、ホスト、またはプロジェクトにインポートする必要はありません。
  • SERP、ステートレススクレイピング、完全なブラウザ自動化を網羅する21のツール。 google_searchgoogle_trendsはSERPデータをカバーし、scrape_html/scrape_markdown/scrape_screenshotはワンショットのページ取得をカバーし、16のbrowser_*ツールは状態を持ったナビゲーション、クリック、入力、スクロール、およびスクリーンショットをカバーします。
  • ホストされたエージェント向けのHTTPストリーミングトランスポート。 Copilot CLIがリモートコンテナまたはCIランナーで実行される場合、同じサーフェスにストリーミング可能なHTTPエンドポイントを介してアクセスできます。

無料プランを使えば、これを接続して実際のプロンプトを実行するのに十分です。成長した場合は、料金ページでクオータを比較してください。無料プランでAPIキーを取得するには、app.scrapeless.comにアクセスしてください。


前提条件

  • Node.js 18以上が作業ステーションにインストールされていること — Copilot CLIはnpmからインストールされ、stdio MCPサーバはnpxで起動されます。
  • GitHub Copilot CLIがインストールされており、アクティブなGitHub Copilotサブスクリプションがあること。 CLIはGitHubアカウントに対して認証し、エージェントループはCopilotのクオータを使用します。アクティブなサブスクリプションがない場合、モデルステップは実行されません。
  • ScrapelessアカウントとAPIキー — 無料プランでScrapelessにサインアップし、設定 → APIキー管理からキーをコピーします。
  • 基本的なターミナルに関する知識 — セットアップ全体は数コマンドと小さなJSONファイル1つです。

インストール

セットアップは5つのサブステップからなり、それぞれ独立して検証可能です。

1. GitHub Copilot CLIのインストール

npmからCLIをグローバルにインストールし、起動します:

bash Copy
npm install -g @github/copilot
copilot

最初の起動では、残りのステップが実行されるインタラクティブなCopilotセッションに入ります。

2. Copilotの認証

セッション内で、/loginスラッシュコマンドを使ってサインインし、GitHubデバイス認証フローに従います:

text Copy
/login

これにはアクティブなGitHub Copilotサブスクリプションが必要です — CLIは認証とモデルクオータのためにGitHubのアイデンティティを使用します。Copilot CLIはデフォルトでClaude Sonnet 4.5を使用します;バックエンドはいつでも/modelスラッシュコマンドで切り替えられます。

3. Scrapeless MCPサーバ(stdio)の追加

Copilot CLIは~/.copilot/mcp-config.jsonからMCPサーバを読み取ります。ファイルを作成する(または既存のmcpServersオブジェクトにscrapelessブロックを追加する)ことによって、stdio構成を行います:

json Copy
{
  "mcpServers": {
    "scrapeless": {
      "type": "local",
      "command": "npx",
      "args": ["-y", "scrapeless-mcp-server"],
      "env": { "SCRAPELESS_KEY": "YOUR_SCRAPELESS_KEY" },
      "tools": ["*"]
    }
  }
}

1つの詳細が人々を困惑させています:Scrapeless MCPサーバは**SCRAPELESS_KEY**からキーを読み取りますが、SCRAPELESS_API_KEYからは読み取りません。Scrapeless CLIとSDKはSCRAPELESS_API_KEYを使用していますが、MCPサーバは文書化された例外です — ここではSCRAPELESS_KEYを使用してください。さもなければ、サーバは認証なしで開始されます。サーバのソースはgithub.com/scrapeless-ai/scrapeless-mcp-serverにあります。

YOUR_SCRAPELESS_KEYの部分を実際のキーに置き換えてください。"tools": ["*"]の行は、すべてのツール表面を公開します。また、セッション内で/mcpスラッシュコマンドを使ってサーバを管理できます — /mcp add/mcp show/mcp edit/mcp delete/mcp enable、および/mcp disable—これらは同じ設定ファイルに書き込みます。

4. HTTPストリーミングモードを使用する

ホストがnpxを安定的に起動できない場合 — ホステッド開発コンテナ、リモートワークスペース、またはCIサンドボックス — Copilotをローカルプロセスの代わりにScrapeless HTTPエンドポイントに向けます:

json Copy
{
  "mcpServers": {
    "scrapeless": {
      "type": "http",
      "url": "https://api.scrapeless.com/mcp",
      "headers": { "x-api-token": "YOUR_SCRAPELESS_KEY" },
      "tools": ["*"]
    }
  }
}

同じキー値は両方のモードで機能します。HTTPストリーミングはこれをx-api-tokenヘッダーとして渡すことに注意してください。SCRAPELESS_KEY環境変数ではありません。デベロッパーワークステーションではstdioが適切なデフォルトであり、長期間生存させるのが難しい子プロセスがある場所ではHTTPストリーミングが適切なデフォルトです。

5. 接続の確認

CLIを起動して、接続されているMCPサーバーをリストします。

text Copy
copilot
/mcp

scrapelessサーバーは、21のツールがロードされた状態で表示されるはずです — Googleデータツール(google_searchgoogle_trends)、ワンショットページヘルパー(scrape_htmlscrape_markdownscrape_screenshot)、およびクラウドブラウザのプリミティブ(browser_createbrowser_gotobrowser_get_htmlbrowser_get_textbrowser_clickbrowser_typebrowser_press_keybrowser_scrollbrowser_scroll_tobrowser_screenshotbrowser_snapshotbrowser_waitbrowser_wait_forbrowser_go_backbrowser_go_forwardbrowser_close)が含まれます。サーバーがリストされ、ツールが列挙されている場合は、接続が正常でAPIキーが有効です。


実際の使用方法:Copilot CLIエージェントを促す

MCPサーバーを接続した後、ターミナルでCopilot CLIと対話することでライブウェブデータを取得します — ツール呼び出しを手書きするのではありません。エージェントはScrapeless MCPサーバーが公開するツールリストを読み取り、必要に応じてgoogle_searchscrape_markdown、またはbrowser_*ツールを選択し、自然言語のプロンプトから順番に構成します。あなたの側でツールのJSONを作成する必要がなく、手動でMCP呼び出しを発行する必要もありません。(Copilot CLIはセッション内で対話的にプロンプトを実行するか、copilot -p "<prompt>"を使用してワンショット実行やスクリプトを行います。)

貼り付け可能なプロンプト

プロンプト エージェントの動作
"‘vector database benchmarks 2026’のトップGoogle結果を見つけてJSON形式で返してください。" google_searchを用いてqhlgl → タイプされた結果行。
"今、アメリカで‘developer tools’について上昇している検索トピックは何ですか?" google_trends
"https://react.dev/learn/synchronizing-with-effectsのReactドキュメントページをクリーンなMarkdownとして取得してください。" scrape_markdown
"https://pricing.example.comを開いてください。これはJavaScriptアプリです — レンダリングし、プラン名、価格、機能をJSONとして抽出します。" browser_createbrowser_gotobrowser_get_html → タイプされた抽出。
"https://a.example.com/pricinghttps://b.example.com/pricingの価格ページを比較し、それらの違いを教えてください。" browser_createbrowser_goto(ページA)→ browser_get_htmlbrowser_goto(ページB)→ browser_get_html → 差分。
"https://example.com/landingのフルページのスクリーンショットを取得してください。" scrape_screenshot
"https://example.comのレンダリングされたHTMLを取得して、マークアップを読むことができるようにしてください。" scrape_html
"https://example.com/jobsを開き、リストが読み込まれるまで待機し、ページをスナップショットしてから、すべての求人タイトルと勤務地をJSONとして抽出してください。" browser_createbrowser_gotobrowser_wait_forbrowser_snapshot → タイプされた抽出 → browser_close

実際の例

あなたが入力する:

bash Copy
copilot -p "‘web scraping python’に対するトップオーガニック結果のトップ3を見つけて、リンクとともに要約してください。"

エージェントの計画(平易な英語で):

  1. google_searchq: "web scraping python"hl: "en"gl: "us"で呼び出します。
  2. 結果行の配列を受信し、positiontitlelinksnippetフィールドを読み取ります。
  3. positionでソートし、最初の3行を保持します。
  4. 各結果をsnippetから要約し、要約を行のtitlelinkにペアリングします。
  5. 3つの要約をそのリンクとともにターミナルに返します。

得られる結果(説明的な形状 — エージェントはこのような行から作業します):

json Copy
[
  {
    "position": 1,
    "title": "Python Web Scraping Tutorial",
    "link": "https://www.example.com/python-web-scraping",
    "snippet": "Python、requests、およびパーサーを使用してウェブページをスクレイピングするためのステップバイステップガイド。",
    "source": "example.com"
  },
  {
    "position": 2,
    "title": "Beautiful Soup Documentation",
    "link": "https://www.example.org/beautifulsoup/docs",
    "snippet": "PythonでHTMLとXMLドキュメントを解析するためのリファレンス。",
    "source": "example.org"
  },
  {
    "position": 3,
    "title": "Scraping Dynamic Sites in Python",
    "link": "https://blog.example.net/dynamic-scraping",
    "snippet": "データ抽出の前にJavaScriptページをレンダリングする方法。",
    "source": "example.net"
  }
]
// フィールド名はgoogle_search行の形状に一致し、値は説明的なサンプルです。

ステートレスデータツール(google_searchgoogle_trendsscrape_htmlscrape_markdown)は、そのペイロードをResponse:\n\nでプレフィックスされたボディとして返します。エージェントはJSONを解析する前にそのプレフィックスを取り除くため、回答にそれを見ることはありません。

プロンプトの整形

これを言う 効果
"…ドイツから" / "…ドイツの結果" proxyCountryを介して出力をルーティングし、検索時にgl=deを設定します。
"…マークダウンとして、ナビゲーションやボイラープレートをスキップ" scrape_markdownを選択して、生のHTMLではなくクリーンなテキストペイロードを取得します。
"…最初にレンダリングする、それはシングルページアプリです" browser_*パス(browser_createbrowser_gotobrowser_get_html)を強制し、抽出が水分補給されたDOMに対して実行されます。
"…上位5件のみ" 返された配列を最初の5行に切り詰めます。
"…各結果のスニペットを含める" 出力行のsnippetフィールドを保持します。
"…終了したらセッションを閉じる" browser_createからのsessionIdを持つ最終的なbrowser_closeを追加します。

すべての下部は裏側のリファレンスです - ツールの表面、正確な戻りの形状、エージェントが処理するエッジケースなどです。


Scrapeless MCPツール表面

サーバーが接続されると、GitHub Copilot CLIはSERPデータ、ステートレススクレイピング、完全なアンチデテクションクラウドブラウザ制御にわたる21のツールを認識します。

ツール 何をするか
google_search Google検索(qhlgl)を実行し、構造化されたオーガニック結果の行を返します。
google_trends クエリに対するGoogleトレンドの関心データを取得します。
scrape_html URLを取得し、レンダリングされたHTMLを返します。
scrape_markdown URLを取得し、ページのクリーンなMarkdownを返します。
scrape_screenshot ターゲットURLのスクリーンショットをキャプチャします。
browser_create アンチデテクションクラウドブラウザでセッションを開きます。
browser_goto セッションをURLにナビゲートします。
browser_click ライブページの要素をクリックします。
browser_type 入力または編集可能なフィールドにテキストを入力します。
browser_get_text / browser_get_html ページのテキストまたはHTMLを読み取ります。
browser_screenshot ライブセッションのスクリーンショットをキャプチャします。
browser_snapshot ページのアクセシビリティ/構造スナップショットを返します。
browser_wait / browser_wait_for 固定の間隔を待つか、条件/要素を待ちます。
browser_scroll / browser_scroll_to ページをスクロールするか、特定の要素にスクロールします。
browser_go_back / browser_go_forward セッション履歴を移動します。
browser_press_key ページにキーボードキーを送信します。
browser_close クラウドブラウザセッションを終了します。

無料プランでAPIキーを取得: Scrapeless


返ってくるもの

google_search呼び出しは、有機結果の行のJSON配列を返します。各行は同じキーを持っているため、エージェントはタイトル、リンク、スニペットに直接マッピングできます。

json Copy
// フィールド名はgoogle_searchツールの出力を反映しています。値は説明のためのサンプルです。
[
  {
    "position": 1,
    "title": "Pythonウェブスクレイピングチュートリアル",
    "link": "https://example.com/python-web-scraping",
    "snippet": "Pythonを使ったウェブスクレイピングとHTMLの解析に関するステップバイステップガイド。",
    "source": "example.com"
  },
  {
    "position": 2,
    "title": "ウェブスクレイピングのベストプラクティス",
    "link": "https://example.org/best-practices",
    "snippet": "責任を持ってスクレイピングする方法:レート制限、robots.txt、および構造化された出力。",
    "source": "example.org"
  }
]

プロンプトを実行し始めたらいくつかの率直な観察:

  • google_searchscrape_markdownのようなステートレスツールは、Response:\n\nでプレフィックスされたボディを返し、その後にJSONペイロードが続きます。エージェントは自動的にそのプレフィックスを外すので、ラッパーではなくデータで作業します。
  • browser_*ツールは、Response:\n\nのプレフィックスなしでプレーンテキストを返します。
  • ツールの引数はキャメルケースです:sessionIdproxyCountry、および同様のフィールドは正確に名前の通りに渡します。
  • proxyCountryはリクエストであり、保証ではありません — あなたのアカウントに設定された地域を参照することがあります。
  • ツール出力内の値はコンテンツに依存します:結果数、順序、スニペットのテキストはライブクエリに応じて変動します。

結論:ターミナルから検索、レンダリング、ブラウジング

全体の統合は、1つのMCP構成ブロックと自然言語プロンプトに減少します。scrapeless-mcp-serverエントリーが設定されており、環境にキーがある状態で、GitHub Copilot CLIはライブGoogle検索、JavaScriptレンダリング、完全なアンチデテクションクラウドブラウザを獲得します — すべてターミナルから離れることなく、手動でHTTPクライアントを接続することなく。あなたはタスクを説明し、エージェントはツールを選びます。

他のエージェントを接続する場合、同じScrapeless MCPサーバーもそれらに組み込まれます:完全なツールリファレンスについては、Googleアンチ重力Piエージェントの統合、およびScrapeless MCPサーバーの概要を確認してください。APIキーはSCRAPELESS_KEYに保持し、ローカルCLIにはstdioトランスポートを優先し、ホストされたエージェントにはHTTPストリーミングを優先し、エージェントがツールを選ぶようにします。完全なリファレンスはdocs.scrapeless.comにあります。


FAQ

エージェントを介したウェブスクレイピングは合法ですか?

公開で入手可能なデータのスクレイピングは一般的に許可されていますが、その使用方法については責任が伴います。各サイトの利用規約を確認し、robots.txtを尊重し、個人データやアクセスに関するルールは管轄区域によって異なることを忘れないでください。疑問がある場合は、特定の使用ケースについて法的な助言を受けてください。

Scrapeless APIキーは必要ですか?どの環境変数にそれが保存されていますか?

はい。Scrapeless MCPサーバーは、あなたのアカウントキーで認証を行い、それはSCRAPELESS_KEYに設定されます。これがないと、サーバーは起動しますが、ツールはScrapelessバックエンドにアクセスできません。

GitHub Copilotのサブスクリプションは必要ですか?

はい。GitHub Copilot CLIは、Copilotのモデルに対して実行され、そのためには利用可能なクォータを持つアクティブなCopilotサブスクリプションが必要です。MCPサーバーとそのツールは別個で、サブスクリプションはエージェントのモデルをカバーし、Scrapelessの呼び出しには適用されません。

stdioとHTTPストリームアブル — それぞれをいつ使用するべきですか?

サーバーがCLIと隣接してローカルで実行される場合はstdioを使用します:エージェントがscrapeless-mcp-serverを子プロセスとして起動し、標準入出力を介して通信します。エージェントがホスティングされていたりリモートであり、ローカルプロセスを生成できない場合は、HTTPストリームアブルトランスポート(https://api.scrapeless.com/mcpx-api-tokenヘッダー)を使用します。ローカルのCopilot CLI設定では、stdioが最も簡単な選択肢です。

エージェントは検索だけでなく、完全なブラウザフローを実行できますか?

はい。16のbrowser_*ツールを使うと、エージェントはセッションを開き、ナビゲートし、クリックし、入力し、スクロールし、要素が表示されるのを待ち、スナップショットを撮り、スクリーンショットを取り、閉じることができます — 自然言語のプロンプトによって完全に駆動されるクラウドブラウザのフローです。

proxyCountryは常に適用されますか?

必ずしもそうではありません。proxyCountryは、アカウントに設定された地域に従うことができる優先事項です。ジオターゲティングが重要な場合は、呼び出しの値が常に優先されると仮定せず、出口地域を確認してください。

AIエージェントなしでこれを使用できますか?

はい。Scrapeless MCPサーバーは標準的なMCPサーバーなので、MCP互換のクライアントはそれを呼び出すことができます — あるいはJSON-RPCを介して直接操作することもできます(initializeの後にtools/listおよびtools/call)。エージェントは便利ですが、必須ではありません。


AI駆動のデータパイプラインを構築する準備はできましたか?

コミュニティに参加して無料プランを取得し、GitHub Copilot CLI + Scrapeless MCPエージェントを構築している開発者とつながりましょう:Discord · Telegram

Scrapelessにサインアップして無料のスクレイピングブラウザランタイムを手に入れ、上記の統合をチームが必要とするSERP、ページ、地域に適応させましょう。完全なリファレンスはdocs.scrapeless.comにあります。

Scrapelessでは、適用される法律、規制、およびWebサイトのプライバシーポリシーを厳密に遵守しながら、公開されているデータのみにアクセスします。 このブログのコンテンツは、デモンストレーションのみを目的としており、違法または侵害の活動は含まれません。 このブログまたはサードパーティのリンクからの情報の使用に対するすべての責任を保証せず、放棄します。 スクレイピング活動に従事する前に、法律顧問に相談し、ターゲットウェブサイトの利用規約を確認するか、必要な許可を取得してください。

最も人気のある記事

カタログ