# Codex MCP 配置模板

核验日期：2026-07-16

## 可直接使用：OpenAI Docs MCP

加入 `~/.codex/config.toml`：

```toml
[mcp_servers.openai_docs]
url = "https://developers.openai.com/mcp"
enabled = true
required = false
default_tools_approval_mode = "prompt"
startup_timeout_sec = 20
tool_timeout_sec = 60
```

验证：

```bash
codex mcp list
```

在交互式 Codex 中也可使用 `/mcp` 查看连接状态。

## STDIO server 结构

以下是结构说明，默认保持注释，填入经过审查的本地程序后再启用：

```toml
# [mcp_servers.local_tool]
# command = "/absolute/path/to/reviewed-server"
# args = ["--stdio"]
# cwd = "/absolute/path/to/server-workdir"
# env_vars = ["LOCAL_SERVICE_TOKEN"]
# enabled = true
# required = false
# enabled_tools = ["read", "search"]
# default_tools_approval_mode = "prompt"
# startup_timeout_sec = 20
# tool_timeout_sec = 60
```

STDIO 会在本机执行 command。必须核对二进制来源、参数、工作目录和它能继承的环境变量。

## Streamable HTTP 结构

```toml
# [mcp_servers.remote_tool]
# url = "https://mcp.example.invalid/mcp"
# bearer_token_env_var = "REMOTE_MCP_TOKEN"
# enabled = true
# required = false
# enabled_tools = ["read", "search"]
# disabled_tools = ["delete"]
# default_tools_approval_mode = "writes"
# startup_timeout_sec = 20
# tool_timeout_sec = 60
```

`.invalid` 是保留示例域，不会连接真实服务。替换 URL 前确认服务身份、隐私政策和数据边界。

## OAuth server

配置 URL 后运行：

```bash
codex mcp login SERVER_NAME
```

不要把 OAuth token 复制进 TOML。需要固定 callback 时，按服务方注册的完整 redirect URI 配置 callback port/URL，并核对当前官方参考。

## 工具级审批

```toml
# [mcp_servers.remote_tool.tools.search]
# approval_mode = "auto"
#
# [mcp_servers.remote_tool.tools.write]
# approval_mode = "approve"
```

选择原则：

- `auto`：只用于已确认只读且低风险工具。
- `prompt`：每次由 Codex 判断是否提示。
- `writes`：声明只读的工具可运行，写工具提示。
- `approve`：该工具始终要求审批。

## 上线前检查

- [ ] server 来源与 transport 已核验。
- [ ] TOML 没有真实秘密。
- [ ] 工具列表采用最小 allowlist。
- [ ] 删除、发送、发布和写入工具需要审批。
- [ ] `required=true` 只用于任务不可缺少的 server。
- [ ] 初始化失败在自动化中会变成可见失败。
- [ ] App、CLI、IDE 共享配置时，各形态都完成一次连接验证。

官方来源：

- https://learn.chatgpt.com/docs/extend/mcp
- https://learn.chatgpt.com/docs/config-file/config-basic
