Codex MCPとは?mcp addとconfig.tomlの設定方法を解説

CodexにFigmaのデザインやGitHubのIssueを読ませたいと思って調べたものの、codex mcp addとconfig.tomlのどちらで設定すればよいのか迷っていないでしょうか。検索で見つかる記事には「CodexをMCPサーバーとしてClaude Codeから呼ぶ」手順も混ざっていて、どれが今も使えるのか判断しにくいはずです。
この記事では、Codex MCPの仕組み・対応するサーバーの種類・codex mcp addでの追加・config.tomlでの細かな設定・IDE拡張とデスクトップアプリでの設定・よく使うサーバーの例・Claude Codeとの組み合わせの現状・安全に使うための注意点を、OpenAIの公式ドキュメントに沿って解説します。
記事を読めば、Codexに外部のツールをつなぐ設定を最新の手順で進められる状態です。結論は、まず1つのサーバーをcodex mcp addで追加し、慣れてきたらconfig.tomlで使うツールと承認の方法を絞るのが安全な進め方です。
Codex MCPとはCodexに外部のツールと情報をつなぐ仕組み
まず、Codex MCPの全体像を以下の4つで押さえます。
- MCPはAIと外部のツールをつなぐ共通の規格
- CodexはMCPクライアントとしてサーバーに接続する
- CLI・IDE拡張・デスクトップアプリで設定を共有する
- CodexをMCPサーバーとして動かす機能は削除された
MCPはAIと外部のツールをつなぐ共通の規格
MCPはModel Context Protocolの略で、AIのモデルと外部のツールや情報源をつなぐための共通の規格です。OpenAIの公式ドキュメントは、MCPを使うとCodexに外部のドキュメントを参照させたり、ブラウザやFigmaなどの開発ツールを操作させたりできると説明しています。
MCPに対応したサービスは、MCPサーバーとして機能を公開します。AIの側は、サーバーが用意した道具(ツール)を呼び出して情報を取り出したり、操作を実行したりする仕組みです。
MCPサーバーとは?仕組みと安全な選び方・代表例を徹底解説!
CodexはMCPクライアントとしてサーバーに接続する
Codex MCPと呼ばれるのは、CodexがMCPクライアントとして外部のMCPサーバーにつなぐ使い方です。たとえばGitHubのMCPサーバーをつなげば、gitの操作だけでは扱えないプルリクエストやIssueをCodexから扱えます。
Codex自体の作業の進め方は変わらず、使える道具が増える形です。追加したサーバーの道具は、依頼の内容に応じてCodexが選んで呼び出します。
CLI・IDE拡張・デスクトップアプリで設定を共有する
公式ドキュメントによると、ChatGPTのデスクトップアプリ・Codex CLI・IDE拡張は、同じCodexの環境でMCPの設定を共有します。設定はconfig.tomlに保存され、一度設定すれば他の環境でやり直す必要はありません。
ChatGPTのWeb版は手元の設定ファイルを読まず、プラグインに含まれるリモートのMCPツールを使う仕組みです。
CodexをMCPサーバーとして動かす機能は削除された
以前は、codex mcp-serverコマンドでCodex自体をMCPサーバーとして起動し、Claude Codeなど別のAIから呼び出す使い方がありました。公式ドキュメントによると、codex mcp-serverコマンドと単体のcodex-mcp-serverは現在削除されています。
代わりに案内されているのは、独自のJSON-RPCの手順で通信するCodex app serverです。ただし、app serverはMCPサーバーではなく、実験的な機能のため本番での利用は対象外と明記されています。外部のMCPサーバーにつなぐ機能は、引き続き使えます。
Codexが対応するMCPサーバーの種類
Codexが対応するMCPサーバーの種類と認証の方法は以下の4つです。
- 手元で起動するSTDIOサーバー
- URLで接続するStreamable HTTPサーバー
- 認証はトークンかOAuthで行う
- プラグインに含まれるMCPサーバーも使える
手元で起動するSTDIOサーバー
STDIOサーバーは、パソコンの中でコマンドを実行して起動するMCPサーバーです。npxなどのコマンドでサーバーのプログラムを立ち上げ、Codexとは標準入出力でやり取りします。
環境変数を渡せるため、APIキーが必要なサーバーも動かせます。手元のファイルや開発中のアプリを扱うサーバーは、STDIO方式が中心です。
URLで接続するStreamable HTTPサーバー
Streamable HTTPサーバーは、インターネット上などのアドレスに接続して使うMCPサーバーです。Figmaのように、サービスの提供元がサーバーを運営する形が増えています。
手元にプログラムを入れる必要がなく、URLを登録するだけで接続できる点が利点です。
認証はトークンかOAuthで行う
HTTPサーバーの認証には、Bearerトークンを送る方法とOAuthでログインする方法があります。OAuthは、サービスの画面でログインして利用を許可する方式です。
公式ドキュメントによると、Codexは事前登録が要らないOAuthのクライアント登録方式にも対応しています。信頼できるChatGPTの公式サーバーでは、ChatGPTのログイン状態を使う認証も選べます。
プラグインに含まれるMCPサーバーも使える
Codexのプラグインには、MCPサーバーを同梱しているものがあります。プラグインから起動されるサーバーは、起動のコマンドを自分で設定する必要がありません。
利用者の設定ファイルでは、プラグインのサーバーの有効・無効や、ツールの承認の方法を管理できます。
Codex Skillsとは?使い方・作り方・保存場所とおすすめの始め方を解説
codex mcp addでMCPサーバーを追加する手順
CLIでMCPサーバーを追加して使えるようにする流れは以下の5ステップです。
- codex mcp addでSTDIOサーバーを追加する
- --urlでHTTPサーバーを追加する
- OAuthが必要ならcodex mcp loginでログインする
- codex mcp listと/mcpで接続を確かめる
- 不要になったらcodex mcp removeで削除する
codex mcp addでSTDIOサーバーを追加する
STDIOサーバーは、サーバーの名前と起動のコマンドを指定して追加します。公式ドキュメントでは、開発者向けドキュメントを調べられる無料のContext7を例にしています。
codex mcp add context7 -- npx -y @upstash/context7-mcp
--の後ろに、サーバーを起動するコマンドを書く形式です。APIキーなどを渡す場合は、--env KEY=VALUEの形で指定します。
--urlでHTTPサーバーを追加する
HTTPサーバーは、--urlでアドレスを指定して追加します。
codex mcp add figma --url https://mcp.figma.com/mcp
トークンを使うサーバーでは、--bearer-token-env-varでトークンを入れた環境変数の名前を指定できます。トークンの値そのものではなく、環境変数の名前を登録する仕組みです。
OAuthが必要ならcodex mcp loginでログインする
OAuthに対応したHTTPサーバーは、codex mcp login <サーバー名>でログインします。ブラウザでサービスの認証画面が開き、許可するとCodexに認証情報が保存されます。
ログイン情報を消したいときに使うのは、codex mcp logout <サーバー名>です。提供元が事前に登録したクライアントIDを求めるサーバーでは、追加時に--oauth-client-idを付けます。
codex mcp listと/mcpで接続を確かめる
登録済みのサーバーは、codex mcp listで一覧を表示できます。1つのサーバーの設定を詳しく見たい場合は、codex mcp get <サーバー名>を使います。
Codexを起動した画面で/mcpと入力すれば、いま有効になっているMCPサーバーの一覧が出る仕組みです。追加したサーバーが一覧にあるかを確かめてから「Context7で最新の仕様を調べて」のように依頼してください。
不要になったらcodex mcp removeで削除する
使わなくなったサーバーは、codex mcp remove <サーバー名>で設定から削除します。一時的に止めたいだけなら、config.tomlでenabledをfalseにする方法もあります。
使わないサーバーを残したままにすると、起動のたびに接続を待つ時間がかかる点に注意が必要です。定期的に一覧を見直して、必要なものだけを残しましょう。
Codexの使い方を解説!CLIの導入から日本語での依頼・変更確認まで
config.tomlでMCPサーバーを細かく設定する方法
config.tomlで設定するときのポイントは以下の5つです。
- 設定ファイルはユーザー用とプロジェクト用の2種類がある
- STDIOサーバーはcommandとargsを書く
- HTTPサーバーはurlと認証の項目を書く
- タイムアウトと有効化の項目で動きを調整する
- 使えるツールと承認の方法を絞る
設定ファイルはユーザー用とプロジェクト用の2種類がある
CodexのMCPの設定は、既定では~/.codex/config.tomlに保存されます。特定のプロジェクトだけで使うサーバーは、プロジェクトの.codex/config.tomlに書くことも可能です。
ただし、プロジェクトの設定ファイルが読み込まれるのは信頼済みのプロジェクトに限られます。各サーバーは、[mcp_servers.サーバー名]の見出しの下に設定を書きます。
STDIOサーバーはcommandとargsを書く
STDIOサーバーで必須なのは、サーバーを起動するcommandの項目です。公式ドキュメントのContext7の例は、次のとおりです。
[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
argsには起動時の引数、envにはサーバーに渡す環境変数、cwdには起動する作業フォルダを書けます。env_varsを使うと、手元の環境変数のうち指定したものだけをサーバーへ引き渡せます。
HTTPサーバーはurlと認証の項目を書く
HTTPサーバーで必須なのは、接続先のurlです。トークンを使う場合は、bearer_token_env_varにトークンを入れた環境変数の名前を書きます。
固定のヘッダーはhttp_headers、環境変数から値を読むヘッダーはenv_http_headersに書きます。どの認証情報も見つからない場合の動きは、認証なしでの接続です。
タイムアウトと有効化の項目で動きを調整する
動きを調整する主な項目は、以下の表のとおりです。
| 項目 | 意味 | 既定値 |
|---|---|---|
| startup_timeout_sec | サーバーの起動を待つ秒数 | 10秒 |
| tool_timeout_sec | ツールの実行を待つ秒数 | 60秒 |
| enabled | falseで削除せずに無効にする | 有効 |
| required | trueで起動できないときにCodexの起動を止める | 指定なし |
起動に時間のかかるサーバーは、startup_timeout_secを長めに設定します。業務に欠かせないサーバーにはrequiredを付けておくと、つながらないまま作業が進む事態を防げます。
使えるツールと承認の方法を絞る
enabled_toolsには使ってよいツール、disabled_toolsには使わせないツールを書きます。disabled_toolsは、enabled_toolsを適用した後に差し引かれる仕組みです。
default_tools_approval_modeでは、ツールを実行する前に確認するかを決めます。選べる値は以下の4つです。
- auto: 既定の判断に任せる
- prompt: 実行の前に確認する
- writes: 読み取り専用と示されていないツールだけ確認する
- approve: 確認せずに承認する
ツールごとに承認の方法を変える場合は、tools.ツール名.approval_modeで上書きします。
IDE拡張とデスクトップアプリでMCPを設定する方法
CLI以外の環境でMCPサーバーを設定する方法は以下の3つです。
- ChatGPTデスクトップアプリは設定のMCP serversから追加する
- IDE拡張は歯車のメニューから追加する
- ChatGPTのWeb版はプラグイン経由で使う
ChatGPTデスクトップアプリは設定のMCP serversから追加する
ChatGPTのデスクトップアプリでは、設定を開いてMCP serversを選び、Add serverから追加します。名前を入力し、STDIOかStreamable HTTPを選んで、起動のコマンドかURLを入れる手順です。
保存した後にRestartを押すと、サーバーが有効になります。OAuthが必要なサーバーは一覧に表示されるため、Authenticateを押してログインしてください。
IDE拡張は歯車のメニューから追加する
VS Codeなどの開発ソフトのCodex拡張では、歯車のメニューからMCP serversを開き、Add serverで追加します。入力する内容はデスクトップアプリと同じで、保存後にRestart extensionで拡張を再起動します。
CLIやデスクトップアプリで追加済みのサーバーは、同じ設定ファイルを共有するため改めて登録する必要はありません。
CodexをVS Codeで使う方法!拡張機能の導入と変更確認の手順を解説
ChatGPTのWeb版はプラグイン経由で使う
ブラウザで使うChatGPTのWeb版は、手元のconfig.tomlを読み込みません。Web版でMCPの道具を使うには、プラグインを導入して、プラグインに含まれるリモートのMCPツールを使います。
組織で使う場合は、ワークスペースの管理者がどのプラグインと道具を使えるかを管理できます。
CodexでよくつなぐMCPサーバーの例
公式ドキュメントが便利なMCPサーバーとして挙げている例は、以下の表のとおりです。
| サーバー | できること |
|---|---|
| OpenAI Docs MCP | OpenAIの開発者向けドキュメントを検索して読む |
| Context7 | 最新の開発者向けドキュメントを参照する |
| Figma | Figmaのデザインにアクセスする |
| Playwright | ブラウザを操作して画面を確かめる |
| Chrome Developer Tools | Chromeを操作して調べる |
| Sentry | Sentryのエラーログを参照する |
| GitHub | プルリクエストやIssueなどgitの外の操作をする |
用途別に代表的なものを紹介すると、以下の4つです。
- 開発ドキュメントを調べるOpenAI Docs MCPとContext7
- デザインからコードを作るFigma MCP
- ブラウザを操作するPlaywright MCP
- 社内の情報を扱うGitHubやNotionのMCP
開発ドキュメントを調べるOpenAI Docs MCPとContext7
AIのモデルは、学習した時点より新しい仕様を知りません。ドキュメント系のMCPサーバーをつなぐと、Codexが作業の途中で最新の仕様を調べてからコードを書けます。
Context7は、さまざまなライブラリの開発者向けドキュメントを参照できる無料のサーバーです。OpenAIのAPIを使う開発なら、OpenAI Docs MCPも候補になります。
デザインからコードを作るFigma MCP
Figma MCPを使うと、Figmaのデザインの情報をCodexに渡し、画面のコードを作らせられます。Figmaの公式ヘルプは、対応するクライアントとしてCodexを挙げています。
Figmaのサーバーは、Figmaが運営するリモートのサーバーと、デスクトップアプリで動くサーバーの2種類です。リモートのサーバーはすべての席とプランで使え、デスクトップのサーバーは有料プランのDev席かFull席が必要です。
ブラウザを操作するPlaywright MCP
Playwright MCPは、ブラウザを操作して画面を開いたり、ボタンを押したりできるサーバーです。作ったWebアプリの動きを、Codex自身に確かめさせる使い方ができます。
PlaywrightのGitHubリポジトリには、Codex向けの追加コマンドが載っています。
codex mcp add playwright npx "@playwright/mcp@latest"
社内の情報を扱うGitHubやNotionのMCP
GitHubのMCPサーバーを使うと、プルリクエストやIssueの作成・確認をCodexに任せられます。NotionのMCPは、Notionが運営するリモートのサーバーで、OAuthで許可すると検索・閲覧・ページやデータベースの作成と更新ができます。
Notionの公式ドキュメントでも、Codexは対応するクライアントの1つです。ワークスペースのオーナーは、設定の接続の画面でMCPクライアントからの接続を管理できます。
Claude CodeとCodexをMCPで組み合わせる方法の現状
Claude CodeとCodexをMCPで組み合わせる方法の現状は以下の3つです。
- codex mcp-serverは削除されapp serverへの移行が案内されている
- 同じMCPサーバーをClaude CodeとCodexの両方に登録できる
- 古い手順を紹介する記事に注意する
codex mcp-serverは削除されapp serverへの移行が案内されている
以前は、Claude CodeにCodexをMCPサーバーとして登録し、Claude Codeから作業の一部をCodexに任せる使い方が紹介されていました。公式ドキュメントによると、codex mcp-serverコマンドは削除されており、Claude CodeからCodexをMCPサーバーとして呼ぶ使い方は成り立ちません。
公式が移行先として示すCodex app serverは、MCPではなく独自のJSON-RPCで通信する仕組みです。実験的な機能で本番の利用は対象外とされているため、業務の仕組みに組み込む判断は慎重に行いましょう。
同じMCPサーバーをClaude CodeとCodexの両方に登録できる
GitHub・Figma・Notionなどの多くのMCPサーバーは、Claude CodeとCodexの両方を対応クライアントに挙げています。同じサーバーを両方に登録すれば、どちらのAIからも同じ外部ツールを使えます。
設定の書き方は異なり、CodexはTOML形式のconfig.toml、Claude Codeはclaude mcp addでの登録です。両方を使う場合は、それぞれの設定を用意してください。
Claude CodeのMCPとは?設定方法と接続できないときの対処法を解説
古い手順を紹介する記事に注意する
検索結果には、codex mcp-serverを前提にした手順や「CodexはMCPのクライアントにもサーバーにもなれる」と説明する記事が残っています。現在のCodexでは、MCPサーバーとして起動する機能は削除済みです。
記事の手順を試す前に、公式ドキュメントの記述と、手元のCodexのcodex mcp --helpに出るコマンドを確かめてください。
CodexとClaude Codeの違いを徹底解説!料金比較と併用のコツも紹介
Codex MCPを安全に使うための注意点
MCPサーバーを業務で使うときに押さえたい注意点は以下の4つです。
- 信頼できるサーバーだけを接続する
- 書き込みを伴うツールは実行前に確認する
- トークンは環境変数で渡して設定ファイルに書かない
- プロジェクトの設定は信頼したプロジェクトでだけ読み込まれる
信頼できるサーバーだけを接続する
MCPサーバーは、Codexに外部の情報を読ませたり操作をさせたりする入り口です。Claude Codeの公式ドキュメントも、外部の内容を取り込むサーバーにはプロンプトインジェクションの危険があると注意しています。
プロンプトインジェクションは、取り込んだ文章に紛れ込んだ指示でAIの動きを乗っ取る攻撃です。提供元がはっきりしたサーバーを選び、出どころの分からないサーバーはつながないようにしましょう。
書き込みを伴うツールは実行前に確認する
default_tools_approval_modeをwritesにすると、読み取り専用と示されていないツールを実行する前に確認が入ります。ファイルの更新やIssueの作成など、外部に変化を起こす操作を見落とさずに済みます。
使う予定のないツールは、disabled_toolsで最初から外しておくと安全です。
トークンは環境変数で渡して設定ファイルに書かない
HTTPサーバーのトークンは、bearer_token_env_varやenv_http_headersで環境変数から読み込ませられます。設定ファイルにトークンの値を直接書くと、ファイルを共有したときに漏れる危険があるため、環境変数で渡す形が安全です。
プロジェクトのconfig.tomlをリポジトリで共有する場合は、なおさら値を書かないようにしてください。
プロジェクトの設定は信頼したプロジェクトでだけ読み込まれる
プロジェクトの.codex/config.tomlは、信頼済みのプロジェクトでだけ読み込まれます。他人から受け取ったリポジトリを開いたとたんに、知らないMCPサーバーが動き出す事態を防ぐ仕組みです。
初めて開くリポジトリでは、.codex/config.tomlの中身を確かめてから信頼する設定にしましょう。
Codexのセキュリティを徹底解説!承認・サンドボックスの安全設定を紹介
Codex MCPのよくある質問
Codex MCPについてよく出る疑問への回答は以下の4つです。
- Codex MCPは無料で使えますか?
- MCPサーバーが起動しないときはどうすればいいですか?
- Claude CodeのMCP設定をそのまま使えますか?
- Codexを別のAIから呼び出す方法はありますか?
Codex MCPは無料で使えますか?
MCPの機能自体に追加の料金はかかりませんが、Codexの契約は必要です。2026年10月2日時点の公式料金表では、CLIやIDE拡張でCodexを使えると明記されているのはPlus(月20ドル)以上のプランとAPIキーでの利用です。
つなぐサービスの側で契約が必要な場合もあります。たとえばFigmaのデスクトップのサーバーは、有料プランのDev席かFull席が条件です。
MCPサーバーが起動しないときはどうすればいいですか?
まずcodex mcp get <サーバー名>で設定の中身を確かめ、Codexの画面で/mcpを開いて有効なサーバーに入っているかを見ます。起動のコマンドを手元のターミナルで直接実行すると、エラーの内容を確かめやすくなります。
起動に時間がかかるサーバーは、startup_timeout_secを既定の10秒より長くしてください。OAuthのサーバーで認証が切れている場合は、codex mcp loginでログインし直します。
Claude CodeのMCP設定をそのまま使えますか?
そのままでは使えません。CodexはTOML形式のconfig.toml、Claude Codeは独自の形式で設定を保存するため、Codexでは改めてcodex mcp addかconfig.tomlで登録します。
サーバーの側が両方に対応していれば、同じサーバーを登録して使えます。
Codexを別のAIから呼び出す方法はありますか?
MCPサーバーとして呼び出す方法は、codex mcp-serverの削除により使えなくなりました。公式は、認証・会話履歴・承認・作業の進み具合の受け取りが必要な連携には、Codex app serverを使うよう案内しています。
app serverは実験的な機能で、本番での利用は対象外です。業務で使う場合は、対話型のCodexや非対話のcodex execなど、正式に提供されている使い方を優先してください。
Codex MCPはまず1つのサーバーをcodex mcp addで試しましょう
Codex MCPは、CodexにMCPサーバーをつないで外部のドキュメントや開発ツールを使わせる仕組みです。設定はconfig.tomlに保存され、CLI・IDE拡張・デスクトップアプリで共有されます。CodexをMCPサーバーとして動かすcodex mcp-serverは削除済みのため、古い手順には注意が必要です。
まずはContext7やPlaywrightなど1つのサーバーをcodex mcp addで追加し、/mcpで接続を確かめてみましょう。慣れてきたらconfig.tomlで使うツールと承認の方法を絞り、トークンは環境変数で渡す形に整えると、業務でも安心して使えます。



