29
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Codex CLIでMCPサーバを設定する方法!config.toml またはコマンド一発で簡単

Last updated at Posted at 2025-09-19

こんにちは、とまだです。

Codex CLIを使い始めたけど「MCPサーバの設定方法がわからない」と困っていませんか?

実は、MCPサーバを設定すると、Codex CLIがさまざまな外部ツールと連携できるようになり、開発効率がアップします。

今回は、初心者でも迷わずMCPサーバを設定できるよう、基本から応用まで丁寧に解説していきます。

忙しい人のために要約

  • MCPサーバはCodex CLIと外部ツールをつなぐ橋渡し役
  • 設定はconfig.tomlに数行追加するだけ
  • CLIコマンドならcodex mcp addで簡単設定
  • 複数のMCPサーバを同時に使うことも可能

MCPサーバとは?AIの能力を拡張する仕組み

MCPは「Model Context Protocol」の略です。

難しそうに聞こえるかもしれませんが、実はとてもシンプルな概念です。

身近な例で理解するMCP

スマートフォンのアプリを思い浮かべてください。

スマホ本体だけでもいろいろなことができますが、アプリをインストールすることで、さらに多くのことができるようになりますよね。

  • カメラアプリで写真を編集
  • 地図アプリでナビゲーション
  • 音楽アプリで曲を再生

MCPサーバも同じような役割を果たします。

Codex CLI(スマホ本体)に、MCPサーバ(アプリ)を追加することで、新しい機能が使えるようになるのです。

MCPサーバで何ができる?

具体的には、こんなことが可能になります。

ドキュメント検索系

  • 最新のReact、Next.jsドキュメントを自動取得
  • npmパッケージの情報を検索
  • APIドキュメントの参照

ブラウザ操作系

  • Webページの自動テスト
  • スクリーンショット撮影
  • フォームの自動入力

データベース系

  • Supabaseのデータ操作
  • PostgreSQLクエリ実行
  • データのバックアップ

開発ツール系

  • GitHubのissue管理
  • Slackへの通知
  • Dockerコンテナの操作

これらすべてが、Codex CLIから自然言語で操作できるようになるのです。

Codex CLIのMCP設定ファイルを理解する

config.tomlの場所と役割

MCPサーバの設定はconfig.tomlというファイルで管理します。

このファイルは以下の場所にあります。

~/.codex/config.toml

~はホームディレクトリを表すので、実際のパスは以下のようになります。

  • Mac/Linux: /Users/あなたのユーザー名/.codex/config.toml
  • Windows: C:\Users\あなたのユーザー名\.codex\config.toml

ファイルが存在しない場合

初めてMCPサーバを設定する場合、このファイルはまだ存在しないかもしれません。

その場合は、以下のコマンドで作成できます。

mkdir -p ~/.codex
touch ~/.codex/config.toml

設定方法1:config.tomlを直接編集する

基本的な設定構造

MCPサーバの設定は、以下の基本構造に従います。

[mcp_servers.サーバー名]
command = "実行するコマンド"
args = ["引数1", "引数2", "引数3"]

各項目の意味を説明します。

  • mcp_servers.サーバー名: 任意の名前を付けられます
  • command: MCPサーバを起動するコマンド
  • args: コマンドに渡す引数(配列形式)

実際の設定例

いくつかの代表的なMCPサーバの設定例を見てみましょう。

ドキュメント検索(Context7)

[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]

ブラウザ自動化(Playwright)

[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]

ファイルシステム操作

[mcp_servers.filesystem]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem"]

環境変数やオプションの設定

APIキーなどの機密情報が必要な場合は、環境変数を設定できます。

[mcp_servers.github]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-github"]
env = { "GITHUB_TOKEN" = "your-github-token" }

タイムアウト時間を調整することも可能です。

[mcp_servers.slowserver]
command = "npx"
args = ["slow-mcp-server"]
startup_timeout_ms = 30000  # 30秒に設定

設定方法2:CLIコマンドで簡単設定

codex mcp addコマンドの基本

config.tomlを直接編集する代わりに、CLIコマンドで設定する方法もあります。

基本構文:

codex mcp add [サーバー名] [コマンド] [引数...]

具体的な使用例

Context7を追加

codex mcp add context7 -- npx -y @upstash/context7-mcp

--の後ろがMCPサーバを起動するコマンドになります。

Playwrightを追加

codex mcp add playwright npx @playwright/mcp@latest

環境変数付きで追加

codex mcp add github --env GITHUB_TOKEN=your-token -- npx -y @modelcontextprotocol/server-github

その他の便利なコマンド

設定済みMCPサーバの一覧表示

codex mcp list

特定のMCPサーバの詳細確認

codex mcp get playwright

以下のように表示されます。

codex mcp get playwright
playwright
  command: npx
  args: @playwright/mcp@latest
  env: -
  remove: codex mcp remove playwright

MCPサーバの削除

codex mcp remove playwright

設定したMCPサーバの動作確認

Codex CLIを起動

まず、Codex CLIを起動します。

codex

接続状態の確認

Codex CLI内で以下のコマンドを実行します。

/mcp

正常に接続されていれば、以下のような表示が出ます。

Connected MCP Servers:
  ✓ context7 - Ready
  ✓ playwright - Ready
  ✓ filesystem - Ready

実際に使ってみる

MCPサーバが接続されていることを確認したら、実際に使ってみましょう。

例えば、Context7が接続されている場合:

Next.jsの最新のApp Routerについて調べて

Playwrightが接続されている場合:

https://example.com のスクリーンショットを撮って

複数のMCPサーバを組み合わせる

複数サーバーの同時設定

config.tomlでは、複数のMCPサーバを同時に設定できます。

# ドキュメント検索用
[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]

# ブラウザ操作用
[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]

# GitHub連携用
[mcp_servers.github]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-github"]
env = { "GITHUB_TOKEN" = "your-token" }

# ファイルシステム操作用
[mcp_servers.filesystem]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem"]

組み合わせて使う例

複数のMCPサーバを組み合わせることで、より複雑なタスクも実行できます。

GitHubから最新のissueを取得して、
その内容をPlaywrightでテストして、
結果をファイルに保存して

このような指示を出すと、Codex CLIが適切なMCPサーバを選択して処理を実行してくれます。

よくあるトラブルと解決方法

MCPサーバが接続できない

原因1:設定ファイルの記述ミス

config.tomlの構文エラーをチェックしましょう。

# 設定ファイルを表示して確認
cat ~/.codex/config.toml

特に以下の点に注意:

  • 引用符の対応が取れているか
  • カンマやブラケットの位置が正しいか
  • インデントが揃っているか

原因2:必要なパッケージがインストールされていない

初回実行時は、パッケージのダウンロードに時間がかかることがあります。

しばらく待ってから、再度Codex CLIを起動してみてください。

特定のMCPサーバだけ動かない

解決方法1:個別に実行してエラーを確認

ターミナルで直接MCPサーバのコマンドを実行してみましょう。

npx -y @upstash/context7-mcp

以下のように表示されれば本来は設定可能です。

$ npx -y @upstash/context7-mcp
Context7 Documentation MCP Server running on stdio

しかしエラーメッセージが表示されれば、設定方法が変わっている可能性があります。

解決方法2:タイムアウト時間を延長

起動に時間がかかるMCPサーバの場合:

[mcp_servers.サーバー名]
command = "npx"
args = ["..."]
startup_timeout_ms = 60000  # 60秒に延長

Codex CLIを再起動しても改善しない場合

設定ファイルをリセットして、一つずつ追加してみましょう。

# バックアップを作成
cp ~/.codex/config.toml ~/.codex/config.toml.bak

# 最小限の設定から始める
echo '[mcp_servers.test]
command = "echo"
args = ["test"]' > ~/.codex/config.toml

MCPサーバ設定を削除したい場合

config.toml から該当の設定の行を削除してあげるだけでOKです。

もしくは、以下のようにコマンドでも削除できます。

codex mcp remove xxx

xxx の部分は config.toml 内で書いてあるサーバ名に対応させてあげてください。

[mcp_servers.xxx]

まとめ

MCPサーバの設定は、最初は難しそうに見えるかもしれません。

でも実際には、config.tomlに数行追加するか、codex mcp addコマンドを実行するだけです。

まずは一つ、興味のあるMCPサーバから試してみてください。

Codex CLI の関連記事

他にも Codex や AI 駆動開発の記事を書いていますので、よかったらこちらもご覧ください。

ちょっと宣伝: Codex や Claude Code の Udemy 講座作ってます

主に AI 駆動開発の Udemy コースを開講しており、ありがたいことに複数のベストセラーをいただいてます。

image.png

個人サイトでは最低価格で受講できるクーポン(最大90% OFF)も配布しているので、よかったら見てやってください。

ご意見や、新講座の要望も大歓迎です!

29
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?