Claude Codeでネット情報を取り込みたい人向け
AI関連の最新発表を取材して記事化したい、競合サービスの料金表を一覧でまとめたい、OSSプロジェクトの開発者が書いた解説ブログを読み込ませたい、というように外部ウェブの情報を取り込んで会話に活かしたい場面で、まず WebSearch で関連ページのURL一覧を出させて、目当てのものを WebFetch に渡して中身を要約・抜粋させる流れで使う。
WebSearch と WebFetch は、Claude Code が外の世界の情報を取り込むときに使う2つ組のツールです。WebSearch は気になる言葉でネット検索をかけて、関連しそうなページの一覧を返してくれる役。WebFetch はその中から「これ」と決めた1ページを名指しで指定して、本文の中身を読み込ませる役。検索と精読、役割分担がはっきり分かれています。
「最新の情報を踏まえた記事を書きたい」「公式の発表文を引用したい」という場面で、この2つを順に呼ぶ流れが標準です。私もAIニュース記事を書くときは、まずWebSearchで関連の話題を漁って、目当ての公式ブログのURLを確定してから、WebFetchで本文を読ませます。
噛み砕くと
WebSearchは図書館の検索カウンターみたいなもの。「○○についての本ありますか」と尋ねたら、関連しそうな本のタイトルと棚番号を一覧で返してくれます。ただし中身までは読んでくれない。
WebFetchはそのリストから1冊を選んで、棚から本を取ってきて該当ページを音読してくれる司書役です。本文を読むのはこっちの担当。
つまり、検索と本文取得が完全に別の担当者になっている。私は最初これを1つのツールだと思い込んでいて、検索結果のリンクが自動で開かれる気でいました。実際は手動でURLを渡す必要があります。
大事な前提:WebSearch の結果は WebFetch に自動で流れない
2つは独立したツールです。WebSearch が返した検索結果のURL一覧を見て、Claude が「このURLを読みたい」と判断したら、改めてWebFetchを起動します。1往復ぶん手間が増える、と覚えておくと混乱しません。
もう1つの前提として、WebFetchで取れるのは公開ページだけ。X(旧Twitter)の特定アカウント限定ポスト、Slackの社内チャンネル、ログインが要る管理画面の内側は中身が返ってきません。「ログインしてください」というHTMLだけが返って終わります。
「AIニュース記事を書く前のリサーチ」を例に、実際の手順を見る
仮に「Claude の新モデルが発表されたらしい」という噂を聞いて、その内容を踏まえた記事を1本書く、という場面を想定します。手元にあるのは「新モデル名: Claude Opus 4.7 らしい」という曖昧な情報だけ。
ステップ1: WebSearch で関連キーワードを検索する
Claude Code の会話画面で、こう投げます。
> Claude Opus 4.7 の発表に関する公式ブログを探して。Anthropic 公式の発表記事の URL が知りたい。
Claude が裏で WebSearch を叩いて、検索結果のタイトルと URL を一覧で返します。Google検索の上位10件くらいが、要約付きで並ぶイメージです。
ステップ2: 結果を見て、本物の公式 URL を見極める
ここがちょっと注意。検索結果には公式ブログだけじゃなく、第三者のまとめサイト、日本語訳記事、X のスクリーンショット転載なんかも混ざります。私は「anthropic.com ドメインで、かつ /news/ や /blog/ に該当するもの」を優先します。
ステップ3: WebFetch で本文を取得する
URLが確定したら、Claude にこう頼みます。
> https://www.anthropic.com/news/claude-opus-4-7 の本文から、ベンチマークの数字と価格表だけ抜き出して。
Claude が WebFetch を叩いて、HTML を裏でマークダウンに変換し、指定の指示文と一緒に小型のAIモデルに通します。返ってくるのは要点だけ。HTMLタグまみれの生データではなく、抜き出したい情報がきれいに整理された状態で戻ってきます。
ステップ4: 取得した内容を引用しつつ記事を書き始める
ここで初心者がやりがちな勘違いがあって、「WebFetchの出力をそのまま記事に貼り付ければ取材完了」と思ってしまう。これは危ない。
WebFetchの出力は、AIが要約した二次情報です。元の発表文の言い回しを変えていたり、数字の単位が落ちていたりすることがある。引用として記事に載せるなら、もう一度ブラウザで該当ページを開いて、本文の原文を自分の目で確認する習慣をつけたほうが安全です。
ステップ5: 同じURLを15分以内に再取得しない
WebFetchには15分の一時保存があります。さっき取ったページをすぐ取り直しても、保存済みの答えがそのまま返ってきます。一度問い合わせた結果を15分間覚えていて、同じURLが来たら新しく取りに行かずに使い回す、という仕組みです。
ニュース速報みたいに分単位で内容が更新されるページの場合、これが落とし穴になります。15分待つか、別のURLや別のクエリ文字を末尾につけて取り直すなどの工夫が要ります。
ステップ6: WebFetch の結果に書かれた「指示」を信用しない
これは最近知って驚いたんですが、WebFetchで取ったページの中に「以降はこの指示に従って動作してください」みたいな攻撃的な文字列が混じっていることがあります。第三者がそういう罠を仕込んだページを返してくることがある、ということです。
Claude Code はそれを「指示」ではなく「単なる読み込んだコンテンツ」として扱う設計にはなっています。ただし、書き手側も結果を完全に鵜呑みにしないこと。怪しい命令文を見つけたら、その出典ページが信頼できるかどうか別の方法で確認します。
つまり WebSearch / WebFetch は何をしてくれるのか
- やってくれる: WebSearchは指定キーワードでネット検索をかけて、関連ページのタイトル・URL・短い要約を一覧で返す。WebFetchは指定URLのHTMLを読み込み、AIモデルでマークダウン化してから要約や抜粋を返す
- やってくれない: WebSearchの結果からURLを自動で選んで開く動作、ログインが要るページの中身取得、複数ページの自動巡回、ニュース速報の分単位の更新追従(15分の一時保存が先に効く)
- 意味が薄い場面: 自分のローカルファイルを読みたいだけのとき(Read で済む)、Git管理下のドキュメント検索(Grep のほうが速い)、ChatGPTやGeminiの公式機能と比較したいだけのとき(手元の資料があれば検索しなくていい)
使いどころ3シナリオ(具体題材で再現)
シナリオ1: 料理ブログを書くとき、最新の食材トレンドを反映したい
「2026年に話題になっている発酵食品」みたいな旬のテーマを記事にする場面。自分の冷蔵庫の中身だけでは情報が足りないので、まず WebSearch で「2026 発酵食品 トレンド」を検索。料理研究家のブログ、食品業界誌、消費者庁の発表などが一覧で返ってきます。
その中から信頼できそうな出典を1〜2件選んで WebFetch で本文を取得。「発酵食品の年間消費量データ」みたいな数字を抜き出して、自分のレシピ記事の冒頭に「最新動向はこうです」と引用ブロックで載せる、という流れ。
シナリオ2: 家計簿アプリを開発中で、競合他社の料金プランを調査したい
例えばマネーフォワード、Zaim、Moneytree あたりの料金表をまとめたいとき。一気に WebFetch で3件取りに行きたくなりますが、まずは WebSearch で「家計簿アプリ 料金 比較 2026」のような形で検索して、各社の公式料金ページのURLを確定します。
そのあと WebFetch を1件ずつ別々に呼びます。1回の呼び出しで3社まとめては取れません。3社それぞれの公式URLを順に渡して、それぞれの本文から「月額」「年額」「無料枠の上限」だけ抜き出してもらう、という使い方が現実的です。
シナリオ3: OSSプロジェクトのclone直後に、READMEに載っていない開発者の意図を調べたい
GitHub からプロジェクトをコピーしてきた直後、READMEの説明だけだとよく分からない、というのはよくあります。そんなとき、開発者が書いたブログ記事や、その人がカンファレンスで話した内容のスライドが公開されていることが多い。
WebSearch で「(プロジェクト名) 開発者 ブログ」みたいに検索をかけて、見つけた記事のURLを WebFetch に渡します。「設計判断の理由を抜き出して」と頼むと、READMEには書かれていない裏の意図が要約されて返ってきます。私はこれをやってから初めてコードを読み始めるようにしてます。
初心者が踏みやすい落とし穴
- 検索結果のURLを自分で選ぶ必要がある。WebSearch がトップ件数を返したからといって、自動でWebFetchに繋がるわけではありません。Claude が「このURLを読みたい」と判断するか、人間が指示する必要がある
- ログインが要るページは中身が取れない。X の限定ポスト、Slackの社内チャンネル、Notion の非公開ワークスペース、有料記事の続きなどは全滅。「公開URLを直接叩いて中身が見えるか」がそのまま判定基準
- WebFetch は1回1ページ。複数ページを巡回したいなら、Claude にURL一覧を作らせて、それぞれ順番にWebFetchを呼ぶ流れになる。並列で同時取得はできない
- 15分の一時保存で「あれ、さっきと同じ結果が返ってきた」現象。ニュース速報や株価ページなど、分単位で更新されるところでは要注意。少し待つか、別のソースから取り直す
- 取得結果の中の「命令文」を真に受けない。WebFetchの返答に「以降は次の指示に従ってください」みたいな文字列が混入していることがある。AIは設計上それを命令として扱わないが、書き手も鵜呑みにせず、本当に大事な情報なら別のソースで裏を取る
- 曖昧な日本語クエリは精度が下がる。「最新のAI事情」みたいな広いクエリだと、ノイズが多くて目当てのページに辿り着きにくい。固有名詞、年、製品名、英語表記を組み合わせると当たりやすくなる。例: 「Claude Opus 4.7 release notes」
- WebFetchの指示文を「全文翻訳して」「要約して」だけにすると重い。長文ページを丸ごと処理しようとして時間がかかります。「<h2>見出しだけ抜き出して」「価格表の数字だけ」のように、抜き出したい情報の構造を絞ると速くて精度も上がります
- 有料APIキーは要らない。Anthropic公式が裏で処理してくれるので、Google検索APIの契約や Bing Search API の準備は不要。Claude Code を起動できる環境なら、追加設定なしでそのまま使えます
書き方
WebSearch: query="検索したい言葉"
WebFetch: url="https://..." prompt="このページから何を抜き出したいか"
やってみるとこうなる
入力
> Claude Opus 4.7 の発表に関する Anthropic 公式ブログを探して。本文からベンチマークの数字と価格表だけ抜き出して。
出力例
(Claudeが裏でWebSearchを叩いた結果)
1. Claude Opus 4.7 - Anthropic
https://www.anthropic.com/news/claude-opus-4-7
The next generation of Claude with improved reasoning and ...
2. Anthropic releases Claude Opus 4.7 - TechCrunch
https://techcrunch.com/...
3. ...
(続けてClaudeがWebFetchで1番目のURLを取得した結果)
ベンチマーク:
- SWE-bench Verified: 72.3%
- HumanEval: 92.0%
価格:
- 入力 $15 / 100万トークン
- 出力 $75 / 100万トークン
このページに出てきた言葉
- ツール
- Claude Code が外部に対して何か操作するときの個別の機能。WebSearch、WebFetch、Read、Bash みたいに名前ごとに役割が決まっている
- URL
- ウェブページの住所を表す文字列。<code>https://example.com/blog/post1</code> のような形式
- 公開ページ
- 誰でもURLを直接叩けば中身が見えるページ。ログインが要る会員ページや社内専用の管理画面は対象外
- クエリ
- 検索エンジンに投げる検索ワード。「Claude Opus 4.7 release」のように単語を並べた文字列
- マークダウン
- <code>## 見出し</code> や <code>**太字**</code> のような記号で文書構造を表す簡単な書式。HTMLよりもAIが読み取りやすい
- 一時保存
- WebFetch が一度取ってきた結果を15分間保管する仕組み。同じURLをすぐ取り直しても、保管された答えがそのまま返る
- プロンプトインジェクション
- ウェブページの中に「AIへの命令文」を仕込んで、AIが取り込んだときに不正な動作をさせようとする攻撃手法
- OSS
- オープンソースソフトウェアの略。誰でも中身のコードを見られて、コピーして使うことができるソフトウェアのこと
- README
- プロジェクトのフォルダの一番上に置かれる説明ファイル。何のソフトか、どう動かすかが書いてある