Codex 本身能读代码,改代码,跑命令,这些都在本地完成。一旦任务需要它去查最新的接口文档,读一张设计稿,或者翻一遍仓库里的 issue,光靠本地文件就不够了。
MCP 解决的就是这一段。它是一套连接外部工具的标准接口,让 Codex 能调用本机之外的能力。日常写代码不一定用得上,等到你真的需要它访问外部数据和外部服务,再来看这一篇也不迟。
几个词先对上意思
| 概念 | 简单来说 |
|---|---|
| MCP | 连接外部工具的标准接口 |
| MCP Server | 提供工具能力的服务 |
| Tool | Codex 可以调用的具体功能 |
| Config | MCP 的配置文件 |
| STDIO Server | 通过本地命令启动的服务 |
| HTTP Server | 通过网址连接的服务 |
| Context | 外部工具提供给 Codex 的上下文信息 |
换个说法更好理解。Codex 本身像个会干活的人,缺的只是工具。MCP 负责把它和外部工具箱接起来,插上去的每个具体能力叫一个 Tool。一个文档 MCP 能让它读文档,一个数据库 MCP 能让它查表结构和测试数据。

有这些需求时才轮到它
| 场景 | MCP 可以怎么用 |
|---|---|
| 查开发文档 | 接上文档 MCP,让它查新版本 API |
| 查数据库 | 让它读表结构或者取测试数据 |
| 读设计稿 | 接上设计工具 MCP,拿组件信息 |
| 看项目管理工具 | 读 issue,任务和需求说明 |
| 连内部系统 | 调用公司自己的工具和数据源 |
| 连知识库 | 按团队文档干活 |
| 接自动化 | 调用额外的脚本或者服务 |
判断标准很朴素。普通写代码用不上 MCP,只有需要它访问外部工具或者外部数据的时候,再考虑接。
在 App 里怎么接
- 进入桌面端的 Codex App
- 打开 Settings
- 找到 MCP servers
- 看系统推荐了哪些 servers
- 添加自己的 custom server
- 按提示完成授权
- 回到项目的 thread 里调用
- 看结果和权限请求
有些 MCP 需要登录外部账号,授权这一步绕不过去。第八步也别跳过,那里能看到 Codex 实际调用了哪些工具。
添加的时候要填的东西不多。
| 配置项 | 作用 |
|---|---|
| Name | 给这个工具起个名字 |
| Command 或 URL | 启动命令或者服务地址,Codex 靠它连过去 |
| Type | 本地命令型还是远程 HTTP 型 |
| Env | 放 token 和配置项 |
| Auth | 是否需要登录外部账号 |
| Enabled tools | 启用哪些工具,只打开需要的 |

在 CLI 里怎么接
终端里的流程靠几条命令就能走完。
| 命令 | 作用 |
|---|---|
| codex mcp –help | 查看 MCP 命令帮助 |
| codex mcp list | 查看已经配置的 MCP server |
| codex mcp add | 添加一个 MCP server |
| codex mcp remove | 删除不用的 MCP server |
| codex mcp login | 给需要授权的远程 MCP 登录 |
| codex mcp logout | 取消授权 |
| /mcp | 在会话里看当前能调用哪些工具 |
添加的基本格式是 codex mcp add 名称 — 启动命令。名称是你给它起的,启动命令说明它怎么启动。举个常见的例子,给 Codex 加一个叫 context7 的 MCP,通过 npx 启动对应的工具包,写下来就是 codex mcp add context7 — npx -y @upstash/context7-mcp。
添加之后用 codex mcp list 确认一下。能在列表里看到名字,说明配置已经写进去了。进到会话里再打一个 /mcp,就能看到当前可以调用哪些工具。
没显示出来怎么查
| 情况 | 可能原因 |
|---|---|
| 没添加成功 | codex mcp add 执行失败 |
| MCP 启动失败 | 依赖没装或者命令写错 |
| 名称写错 | 调用时用错了 server 名 |
| 需要授权 | 还没登录外部服务 |
| 配置没刷新 | 重启一次 Codex CLI |
配置写在哪
MCP 的配置会写进用户目录下的 .codex/config.toml。里面通常是这样的两行,声明有一个 server 叫 context7,启动命令是 npx 加参数。
不熟悉配置文件的话,前期别手动改。用 codex mcp add 和 codex mcp list 这两条命令更稳,删除也走 codex mcp remove。
远程 MCP 不走本地命令,而是通过网址连接,一般叫 HTTP MCP。它可能要求填服务地址和访问凭证,也可能走浏览器授权登录,对应命令是 codex mcp login 和 codex mcp logout。
新手可以先从不需要复杂授权的文档类 MCP 开始,摸清了再试要登录的远程服务。
