Codex MCP 工具是一个开源的模型上下文协议(MCP)服务器,它连接你的IDE或AI助手(如Claude、Cursor等)到Codex CLI。它支持通过codex exec进行非交互式自动化操作,安全的沙箱编辑并获得批准,以及通过@文件引用进行大规模代码分析。构建时注重可靠性和速度,它可以流式传输进度更新,支持结构化更改模式(旧/新补丁输出),并与标准MCP客户端无缝集成,用于代码审查、重构、文档编写和CI自动化。
最新发布(v1.2.4):增强Windows兼容性 - 现在使用跨平台的
cross-spawn来确保在所有平台上(Windows、macOS、Linux)可靠地执行npm全局命令。查看变更日志
目标:直接从支持MCP的编辑器中使用Codex来高效地分析和编辑代码。
在使用此工具之前,请确保你已经安装了:
✅ 跨平台支持:已在Windows、macOS和Linux上完全测试并运行(v1.2.4+)
claude mcp add codex-cli -- npx -y @cexll/codex-mcp-server
在Claude Code中键入 /mcp 来验证Codex MCP是否处于活动状态。
如果你已经在Claude Desktop中配置好了:
"codex-cli": {
"command": "npx",
"args": ["-y", "@cexll/codex-mcp-server"]
}
claude mcp add-from-claude-desktop
注册MCP服务器与你的MCP客户端:
将以下配置添加到你的Claude Desktop配置文件中:
{
"mcpServers": {
"codex-cli": {
"command": "npx",
"args": ["-y", "@cexll/codex-mcp-server"]
}
}
}
如果你进行了全局安装,则使用以下配置:
{
"mcpServers": {
"codex-cli": {
"command": "codex-mcp"
}
}
}
配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/claude/claude_desktop_config.json更新配置后,请重新启动终端会话。
/codex-cli 访问MCP服务器工具。// 使用默认的gpt-5-codex模型
'解释@src/的架构';
// 使用gpt-5进行快速通用推理
'使用Codex并指定模型gpt-5来分析@config.json';
// 使用o3进行深度推理任务
'使用Codex并指定模型o3来分析复杂的算法@algorithm.py';
// 使用o4-mini进行快速任务
'使用Codex并指定模型o4-mini来给@utils.js添加注释';
// 使用codex-1进行软件工程
'使用Codex并指定模型codex-1来重构@legacy-code.js';
请求Codex分析@src/main.ts并解释其作用使用Codex总结@. 当前目录分析@package.json并列出依赖项请求Codex解释div居中询问Codex关于与@src/components/Button.tsx相关的React开发最佳实践使用SCAMPER方法思考优化我们的CI/CD流水线的方法使用Codex生成我们应用的10个创新特性,并进行可行性分析请求Codex为医疗领域生成产品创意,并采用设计思维方法Codex CLI支持通过沙箱模式和审批策略对权限和审批进行细粒度控制。
sandbox参数(方便标志):
sandbox: true → 启用全自动模式(相当于fullAuto: true)sandbox: false(默认)→ 不禁用沙箱,只是不启用自动模式sandbox参数是一个方便标志,不是安全控制细粒度控制参数:
sandboxMode:控制文件系统访问级别approvalPolicy:控制何时需要用户批准fullAuto:简写为sandboxMode: "workspace-write" + approvalPolicy: "on-failure"yolo:⚠️ 绕过所有安全检查(危险,不推荐)| 模式 | 描述 | 使用场景 |
|---|---|---|
read-only | 只读分析,不修改文件 | 代码审查、探索、阅读文档 |
workspace-write | 可以修改工作区内的文件 | 大多数开发任务、重构、修复bug |
danger-full-access | 完整系统访问,包括网络 | 高级自动化、CI/CD流水线 |
| 策略 | 描述 | 使用时机 |
|---|---|---|
never | 不需要任何批准 | 完全信任的自动化 |
on-request | 每次操作前询问 | 最大控制,手动审核 |
on-failure | 只有操作失败时才询问 | 平衡自动化(推荐) |
untrusted | 极度怀疑模式 | 不信任的代码或高风险更改 |
示例1:平衡自动化(推荐)
{
"approvalPolicy": "on-failure",
"sandboxMode": "workspace-write", // 如果省略,在v1.2+版本中自动设置
"model": "gpt-5-codex",
"prompt": "重构@src/utils以提高性能"
}
示例2:快速自动化(方便模式)
{
"sandbox": true, // 相当于fullAuto: true
"model": "gpt-5-codex",
"prompt": "修复@src/中的类型错误"
}
示例3:只读分析
{
"sandboxMode": "read-only",
"model": "gpt-5-codex",
"prompt": "分析@src/并解释架构"
}
从1.2.0版本开始,服务器会自动应用智能默认值以防止权限错误:
approvalPolicy但未设置sandboxMode → 自动设置sandboxMode: "workspace-write"search: true或oss: true → 自动设置sandboxMode: "workspace-write"(用于网络访问)--skip-git-repo-check以避免非git环境中的错误如果你遇到❌ 权限错误:操作被沙箱策略阻止:
检查1:验证sandboxMode
# 确保你没有在写操作中使用只读模式
{
"sandboxMode": "workspace-write", // 不是"read-only"
"approvalPolicy": "on-failure"
}
检查2:使用方便标志
# 让服务器处理默认值
{
"sandbox": true, // 简单自动化
"prompt": "你的任务"
}
检查3:更新到最新版本
# v1.2+ 包含智能默认值以防止权限错误
npm install -g @cexll/codex-mcp-server@latest
问题1:MCP工具超时错误
如果在使用Codex MCP工具时遇到超时错误:
# 设置MCP工具超时环境变量(以毫秒为单位)
export MCP_TOOL_TIMEOUT=36000000 # 10小时
# 对于Windows(PowerShell):
$env:MCP_TOOL_TIMEOUT=36000000
# 对于Windows(CMD):
set MCP_TOOL_TIMEOUT=36000000
将这行添加到你的shell配置文件(如~/.bashrc、~/.zshrc或PowerShell配置文件)中,使其永久生效。
问题2:Codex无法写文件
如果Codex响应权限错误,如“操作被沙箱策略阻止”或“被用户批准设置拒绝”,请配置你的Codex CLI设置:
创建或编辑~/.codex/config.toml:
# 动态生成的Codex配置
model = "gpt-5-codex"
model_reasoning_effort = "high"
model_reasoning_summary = "detailed"
approval_policy = "never"
sandbox_mode = "danger-full-access"
disable_response_storage = true
network_access = true
⚠️ 安全警告:danger-full-access模式授予Codex完整的文件系统访问权限。仅在受信任的环境中使用此配置,并且对于你完全理解的任务。
配置文件位置:
~/.codex/config.toml更新配置后,请重新启动你的MCP客户端(如Claude Desktop、Claude Code等)。
使用Codex创建并运行一个处理数据的Python脚本请求Codex安全地测试@script.py并解释其作用默认行为:
codex exec命令都会自动包含--skip-git-repo-check以避免不必要的git仓库检查,因为并非所有执行环境都是git仓库。// 使用特定模型的ask-codex
'使用gpt-5模型请求Codex重构@utils/database.js以提高性能';
// 带约束条件的头脑风暴
"思考减少API延迟的解决方案,约束条件:'必须使用现有基础设施,预算低于$5k'";
// 结构化编辑模式
'使用Codex在更改模式下更新所有console.log为使用winston日志器@src/';
这些工具旨在由AI助手使用。
ask-codex:通过codex exec向Codex发送提示。
@文件引用以包含文件内容model参数 - 可用模型:
gpt-5-codex(默认,针对编码优化)gpt-5(通用,快速推理)o3(最聪明,深度推理)o4-mini(快速且高效)codex-1(基于o3的软件工程)codex-mini-latest(低延迟代码问答)gpt-4.1(也可用)sandbox=true启用--full-auto模式changeMode=true返回结构化的旧/新编辑--skip-git-repo-check**以防止非git环境中的权限错误brainstorm:使用结构化方法生成新颖的想法。
ask-codex相同的模型(默认:gpt-5-codex)brainstorm prompt:"改进代码审查过程的方法" domain:"软件" methodology:"scamper"ping:一个简单的测试工具,回显消息。
/codex-cli:ping (MCP) "来自Codex MCP的问候!"help:显示Codex CLI的帮助信息和可用命令。
fetch-chunk:从更改模式响应中检索缓存的片段。
cacheKey和chunkIndex参数timeout-test:用于防止超时的测试工具。
你可以在Claude Code界面中直接使用这些命令(尚未测试与其他客户端的兼容性)。
prompt(必需):分析提示。使用@语法包含文件(例如,/analyze prompt:@src/ 总结这个目录)或询问一般问题(例如,/analyze prompt:请使用网络搜索找到最新的新闻故事)。prompt(必需):代码测试请求(例如,/sandbox prompt:创建并运行一个处理CSV数据的Python脚本或/sandbox prompt:@script.py 安全地测试这个脚本)。message(可选):要回显的消息。🔧 主要改进:
cross-spawn包替换了Node.js原生的spawn()
shell: true修复仍然在某些Windows配置上失败cross-spawn(每周下载量超过5000万,被Webpack/Jest使用)自动处理Windows的.cmd扩展.cmd、.ps1和.exe扩展cross-spawn@^7.0.6和@types/cross-spawn🐛 错误修复:
stdout/stderr添加了可选链以处理TypeScript严格模式下的空值📝 文档:
spawn codex ENOENT错误解决步骤🐛 错误修复:
spawn()与shell: false在Windows上无法解析.cmd扩展