「最近ようやくChatGPT Plusを契約して課金しました。せっかくなので、Codexをたくさん触っていろいろなデータを分析してみたいというのが、この記事を書くモチベーションの1つです。あと最近Vide Codingのコースも受講しているので、その宿題用にも活用したくて。」
はじめに
こんにちは!Codexを使ってWeb上の最新情報を取得しつつ、いろいろと分析に挑戦しているAI初心者です。Codexのweb searchでもWeb情報を参照して最新の情報をLLMに渡せますが、動的サイトのスクレイピングが難しかったり、CAPTCHA処理でブロックされやすかったりといった課題がありました。
そこで最近、職場で知った Bright Data The Web MCP が、こうした問題をかなりきれいに解決してくれることがわかってきました。
Bright DataはWebスクレイピングツールを提供しているサービスです。同社が提供するBright Data The Web MCPは毎月無料で5,000回リクエストでき、個人ユーザーでも試しやすいので、今回はCodex CLIにBright Data The Web MCPを統合して、より安定してWebスクレイピングができる環境を整えてみました。
この記事では「Codexってなに?」「Bright Dataってなに?」「どうやって統合するの?」を順を追って解説していきます。
データ解析の具体的な例は、今後の進捗に合わせて続編記事として投稿する予定です。
Codexとは
CodexはOpenAIが提供するコーディングエージェントです。
コードを読んだり修正したり、ターミナルやブラウザを操作してタスクをこなすことができます。
有名どころなので、ここでは詳しい紹介は割愛します。
Bright Data The Web MCPとは
Bright Dataは世界中のプロキシやスクレイピングツールを提供するデータ基盤サービスです。その中核にあるBright Data The Web MCPサーバーは、LLM用のツールセットを提供し、検索・スクレイピング・ブラウザ操作といった機能をAPIとして公開しています。
特徴は以下のとおりです:
-
無料枠あり
Tavilyは月1,000リクエストに対して、Bright Data The Web MCPは月5,000リクエストの無料枠があります。一部の機能は制限されていますが、通常のスクレイピングツールだとデータの後処理に手間がかかるのに対して、Bright Data The Web MCPのscrape_as_markdownツールで綺麗なデータをそのまま抽出できるのは、1つの大きなメリットです。 -
有料モードと無料モードは簡単に切り替えられる
デフォルトは無料枠のRapid Modeです。PRO_MODE="true"と環境変数を設定するだけで、すぐにProモードの機能が使えるようになります。もちろんProモードは有料です。
👉 通常、新規登録後は「Playgroundモード」と呼ばれる無料トライアルが自動的に開始し、$2分の少量クレジットが付与されます。このリンクを経由して新規登録していただくと、通常の2ドルに加え、さらに$10のクレジットが付与されます!
-
豊富なツール
「完全体」(Pro Mode)では、データ取得がかなり制限されているX、TikTok、インスタなど、各業界向けの専用ツールが約60種類以上用意されています。Rapid Modeだとsearch_engineとscrape_as_markdownのみです。XのAPIが有料化されてきていて、各社のAPIを申請する際には利用目的の記入や審査待ちなど、それなりの時間と手間がかかります。その点、一括でこれらのデータを取得できるBright Dataに課金するのも十分「あり」だなと感じました。

▶️ 60種類ツール一覧
-
動的サイトのスクレイピングに強く、ブロックされにくい
安定した処理が求められる場面で、途中でサイトにブロックされたり、動的サイトにアクセスしても何も取ってこれないのが一番つらいですよね。Bright DataのWeb Unlockerは、まさにこういったケースに強いです。
こうした特徴により、Bright Data The Web MCPは一般的なクローラーよりも容易にサイトへアクセスでき、解析に必要なデータを迅速に取得できます。取得したページはscrape_as_markdownツールで取り込み、LLMに対してJSON抽出を依頼することも可能です。
Codex CLIをBright Data The Web MCPに接続
前提条件
作業を始める前に準備しておいたもの
- Node.js: v22.19.0
- OpenAI APIキー(Codex CLIの利用に必要です)
- Bright DataアカウントとAPIキー(Web MCPサーバーを起動するために必要です)
- OS: macOS
🔑 Bright Data APIキーの取得について
「Setting画面 > Users and API keys」ダッシュボードからAPIトークンを取得します。
Step1: OpenAI Codex CLIをインストール
-
ターミナルを開き、以下のコマンドを実行します:
npm install -g @openai/codex -
環境変数を設定
Codex CLIでOpenAIの公式モデルを利用するには、OpenAI APIキーが必要です。公式手順に従ってAPIキーを取得し、環境変数として設定します。export OPENAI_API_KEY="<あなたのOpenAI APIキー>"この設定は現在のターミナルセッションのみに有効です。
これでターミナル上でcodexコマンドを実行できるようになります。
初回実行時には、ChatGPTでのログインかAPIキーの入力を求められます。

私はChatGPT Plusユーザーなので「Sign in with ChatGPT」を選択しています。
ブラウザでログイン画面が自動的に開きます。

ChatGPTアカウントにログインすると、このフォルダにおける操作について、「Codexが毎回あなたの承認を求める」か、「承認なしで操作できる」かという権限の選択画面が表示されます。私は慎重派なので、2を選んでいます。

-
Bright DataなしのWebスクレイピング
Instagramの動画コメントを取得
Prompt:
https://www.instagram.com/reel/DPBEg1bj_AM/
動画のコメント情報(ユーザー名・コメント・投稿日付)を取得してください。
取得したデータは pandas のデータフレームに整形し、CSV(store_data.csv)として保存してください。
> 通常のWebスクレイピング方法でいろいろ試していましたが、その結果:
> やはりダメでした。
Google Mapの情報を取得
Prompt:
https://maps.app.goo.gl/eNc8T8hqqWfekptY7
上記Google Mapに掲載されている店舗情報(店名・評価ポイント・住所・口コミ上位10件)を取得してください。
取得したデータは pandas のデータフレームに整形し、CSV(map_data.csv)として保存してください。
> こちらは店名、住所、評価ポイントを取得できましたが、口コミはやはり難しかったです。
ということでテストは一旦ここまでとしましょう。
Codex CLIの初期設定が一通り終わったら、一旦/quitコマンドでcodexモードを終了します。
Codex CLIをインストールすると、ホームフォルダに隠しフォルダ~/.codex/が自動的に作成されます。ここにMCPやカスタム指示などを追加・修正できます。Bright Data Web MCPは、このフォルダ内のconfig.yamlに設定を追加することで有効化されます。
設定に入る前に、まずBright Data MCP本体をインストールします。
Step2: Bright Data The Web MCPをインストール
- MCPサーバーをインストール
ターミナルで以下のコマンドを実行して、@brightdata/mcpパッケージをインストールします。npm install -g @brightdata/mcp -
@brightdata/mcpをテスト
次のコマンドで環境変数API_TOKENを設定し、MCPサーバーを起動してログが表示されるか確認します。API_TOKEN="<あなたのBright Data APIキー>" npx -y @brightdata/mcp
初回起動時、Bright Dataアカウントに
mcp_unlockerとmcp_browserの2つのプロキシゾーンが自動で作成されます。これでBright Data MCPが無事に起動していることがわかります。
ここまでの手順でMCPサーバーの動作を確認できたらCtrL+Dでサーバーを停止し、次のステップへ進みます。
Step3: CodexでBright Data MCPサーバーの接続を設定
-
前述の
config.yamlにアクセスするため、以下のコマンドを実行してconfig.tomlを編集します。nano ~/.codex/config.toml -
MCP サーバー設定の追加
編集モードで開いたconfig.yamlに、以下の内容を追加します。[mcp_servers.brightData] command = "npx" args = ["-y", "@brightdata/mcp"] env = {"API_TOKEN" = "<あなたのBright Data APIキー>", "PRO_MODE" = "true"}この設定は、Codexが
npx -y @brightdata/mcpコマンドを自動で起動し、APIトークンやPro Modeを環境変数として渡すためのものです。APIキーの部分は自身のトークンに置き換えます。

最後に設定内容を保存してエディタを終了します。
これでCodex CLIをBright Data MCPサーバーに接続できた!はずです。
念の為、一緒に確認してみましょう!
Step4: MCPサーバー接続の確認
再度codexコマンドを実行します。再起動時にMCPサーバーのブート処理が走るようで、ここでエラーが出なければBright Data MCPを問題なく利用できる状態になっています。

先ほどのインスタの動画コメントとGoogle Mapの情報を再度取得してみます。
Instagramの動画コメントを取得
Google Mapの情報を取得
> 6分もかかったということで、Bright Dataも相当頑張ってくれていますね。
> 頑張った結果、店名、住所、評価ポイントに加えて3件の口コミも取得できていますね!全件は取り切れていませんが、Google Map側のガードが相当厳しいのだろうなという印象です。
結論
ということで、ダラダラと書いてきましたが、Bright DataのWeb MCPサーバーをCodex CLIに組み込むことで、LLMがリアルタイムのWebデータにアクセスし、Webスクレイピングやブラウザ操作を自動的に実行しながら、通常は取りにくいデータも手に入れられるようになります!
これにより、Codexの自然言語操作とBright Dataの高度なデータ取得機能を組み合わせた、強力な自動化ワークフローを構築できそうです。
具体的なデータ分析については、今後の進捗があり次第、続編として紹介します。







