代码执行服务

一个基于OpenAI Codex SDK的MCP服务器,提供代码生成、错误修复、重构和分析等功能,适用于开发效率提升和代码自动化处理。

  • by j-token
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 j-token/codex-mcp

使用说明

codex mcp

MCP(模型上下文协议)服务器,用于封装 OpenAI Codex SDK,使任何兼容MCP的客户端(Claude Code、Cursor、Windsurf等)都能运行Codex代理。

不需要API密钥 --通过ChatGPT OAuth登录进行身份验证。

为什么存在

OpenAI的Claude Code官方Codex插件通过Codex驱动所有内容 命令行界面 --每个审查或任务都是Claude Code必须生成、等待和轮询输出的shell子流程。它读起来像是在没有使用太多真正的Claude Code的情况下构建的,因为这种设计与代理的实际工作方式相冲突:

  • 阻塞等待。 代理程序发出CLI命令,然后处于空闲状态,直到进程返回,而不是继续其他工作。
  • 延迟完工信号。 即使在Codex已经完成之后,“完成”的信号也来得很晚,所以每一步都很拖沓,漫长的会议感觉非常缓慢。

codex-mcp 完全跳过外壳。它将Codex作为本地人暴露给Claude Code MCP服务器 通过stdio,因此每个调用都是一个结构化的工具调用——没有子进程生成、没有轮询、没有延迟完成信号。一个现成的Claude Code插件(claude-code-codex-plugin/)捆绑此服务器,以便后台子代理可以干净地委托给Codex。

特性

  • codex_execute --通过Codex代理运行提示(代码生成、错误修复、重构、分析)
  • codex_execute_structured --使用自定义模式获取结构化JSON输出
  • codex_resume_thread --恢复之前的Codex主题,继续进行完整的对话
  • codex_streamed --带有详细中间事件(推理、命令、文件更改)的流执行

先决条件

设置

1.安装Codex CLI

npm install -g @openai/codex

2.使用ChatGPT进行身份验证

codex login

这将打开一个用于ChatGPT OAuth登录的浏览器。经过身份验证后,服务器将使用您的会话—不需要API密钥。

3.安装依赖项

bun install

提示: 你也可以通过 api_key 参数,如果您更喜欢使用OpenAI API密钥而不是OAuth。

4.运行服务器

bun run start

MCP客户端配置

将此添加到您的MCP客户端配置中:

克劳德代码

claude mcp add codex-mcp -- bun run --cwd /path/to/codex-mcp src/index.ts

克劳德桌面/光标/通用

添加到MCP设置JSON:

{
  "mcpServers": {
    "codex-mcp": {
      "command": "bun",
      "args": ["run", "--cwd", "/path/to/codex-mcp", "src/index.ts"]
    }
  }
}

替换 /path/to/codex-mcp 以及此存储库的实际路径。

Claude代码插件

这 claude-code-codex-plugin/ directory是一个自包含的Claude Code插件,它将此MCP服务器和一个委托子代理捆绑在一起。

布局:

  • .mcp.json --运行已提交的服务器捆绑包(dist/codex-mcp.js)与 bun,所以没有 bun install / node_modules 运行时的需求;你只需要 bun,the codex CLI,并已完成 codex login.
  • agents/codex-runner.md --Sonnet的背景子代理。主线明确地赋予了它一项任务;子代理生成一个单圈GPT-5.5 Codex提示符,调用MCP工具,并返回结果。主模型从不自己制作提示。
  • skills/gpt-5-5-prompting/ --快速制作指南,已加载 仅 由子代理(disable-model-invocation: true),因此主模型无法调用它。

构建服务器捆绑包 --一个约1 MB的自包含JS文件,其中内联了所有依赖项。它致力于回购(dist/codex-mcp.js),因此您只能在更改服务器源代码后进行重建:

bun run build:plugin   # → claude-code-codex-plugin/dist/codex-mcp.js

该捆绑包是跨平台的(任何具有 bun),小到可以提交,并按原样在git上发布——没有每个操作系统的构建,也没有git LFS。

在本地尝试:

claude --plugin-dir ./claude-code-codex-plugin

然后让Claude将一些东西交给Codex——代码审查、根本原因查找、逻辑/数学检查或有界修复——它将委托给 codex-runner 背景中的子代理。

通过安装 /plugin

此仓库兼作插件市场(.claude-plugin/marketplace.json),所以你可以用Claude Code的 /plugin 命令而不是传递 --plugin-dir 每次发射。由于服务器捆绑包已提交到仓库,因此本地路径和GitHub克隆都可以工作,无需额外的构建步骤。

从本地路径:

/plugin marketplace add /path/to/codex-mcp
/plugin install codex-delegate@codex-mcp

来自GitHub:

/plugin marketplace add j-token/codex-mcp
/plugin install codex-delegate@codex-mcp

/path/to/codex-mcp 这是repo的根目录吗 .claude-plugin/marketplace.json安装后, /plugin (管理选项卡)列出它,子代理显示为 @codex-delegate:codex-runner。要发布新版本,请使用重新构建 bun run build:plugin,提交并推送,然后运行 /plugin marketplace update codex-mcp.

工具

codex_execute

通过Codex代理运行提示。

参数 类型 必填 说明
prompt string 是 Codex的任务说明
model string 否 要使用的模型(默认值: gpt-5.4例如。, o4-mini)
sandbox_mode string 否 read-only, workspace-write,或 danger-full-access
working_directory string 否 工作目录路径
reasoning_effort string 否 minimal, low, medium (默认), high, xhigh
approval_policy string 否 never (默认), on-request, on-failure, untrusted
web_search_mode string 否 disabled, cached, live (默认值: live --除非你通过,否则网络搜索已打开 disabled)
additional_directories string[] 否 要访问的额外目录
api_key string No OpenAI API密钥(如果省略,则使用OAuth)
base_url 字符串 否 自定义API基础URL

codex_execute_structured

同 codex_execute 但返回结构化JSON输出。

参数 类型 必填 说明
prompt string 是 任务指令
output_schema object 是 输出格式的JSON模式
(其他参数) 与 codex_execute

codex_resume_thread

继续上一个话题以继续对话。

参数 类型 必填 说明
thread_id string 是 要恢复的线程ID
prompt string 是 后续说明
(其他参数) 与 codex_execute

codex_streamed

使用流媒体运行以捕获所有中间事件。

参数与 codex_execute。返回详细的事件流,包括推理步骤、命令执行和文件更改。

发展

# Run with hot reload
bun run dev

# Type check
bun run check

许可证

麻省理工学院