Skip to content

Latest commit

 

History

History
109 lines (83 loc) · 2.85 KB

File metadata and controls

109 lines (83 loc) · 2.85 KB

codex-as-mcp

通过 Codex-as-MCP 生成多个子代理

每个子代理都会在 MCP 服务器当前工作目录中以完全自主的方式运行 codex e --dangerously-bypass-approvals-and-sandbox。非常适合 Plus/Pro/Team 订阅用户使用 GPT-5 能力。

在 Claude Code 中使用

codex-as-mcp 包含两个工具: tools

你可以通过 prompt 并行启动多个 Codex 子代理: alt text

下图展示了并行委派两个任务的 Codex 会话示例: Codex 使用示例

安装

1. 安装 Codex CLI

需要 Codex CLI >= 0.46.0

npm install -g @openai/codex@latest
codex login

# 验证安装
codex --version

2. 配置 MCP

.mcp.json 中添加:

{
  "mcpServers": {
    "codex-subagent": {
      "type": "stdio",
      "command": "uvx",
      "args": ["codex-as-mcp@latest"]
    }
  }
}

或者使用 Claude Desktop 命令:

claude mcp add codex-subagent -- uvx codex-as-mcp@latest

如果直接配置 Codex CLI(例如 ~/.config/codex/config.toml),可以添加:

[mcp_servers.subagents]
command = "uvx"
args = ["codex-as-mcp@latest"]

工具

  • spawn_agent(prompt: str) – 在服务器的工作目录内生成自主 Codex 子代理,并返回代理的最终消息。
  • spawn_agents_parallel(agents: list[dict]) – 并行生成多个 Codex 子代理;每个元素需要包含 prompt 字段,返回值会按索引给出每个子代理的 output(最终消息)或 error

Provider 凭证(env_key

如果你的 ~/.codex/config.toml(或 ~/.config/codex/config.toml)里某个 provider 配置了 env_key,Codex CLI 运行时会从环境变量里读取对应的 Key。

示例:

model_provider = "custom_provider"

[model_providers.custom_provider]
name = "custom_provider"
base_url = "https://..."
wire_api = "responses"
env_key = "PROVIDER_API_KEY"
show_raw_agent_reasoning = true

请确保 MCP server 进程拥有该环境变量,这样它才能把变量透传给其启动的 codex 子进程。 环境变量名必须与上面的 env_key 值一致(这里是 PROVIDER_API_KEY)。

方式 A(推荐):在 MCP 客户端配置里设置 env(如果支持)

{
  "mcpServers": {
    "codex-subagent": {
      "type": "stdio",
      "command": "uvx",
      "args": ["codex-as-mcp@latest"],
      "env": {
        "PROVIDER_API_KEY": "KEY_VALUE"
      }
    }
  }
}

方式 B:通过 server 启动参数传入 env

uvx codex-as-mcp@latest --env PROVIDER_API_KEY=KEY_VALUE

方式 C:通过 Codex CLI(codex mcp add)添加

codex mcp add codex-subagent --env PROVIDER_API_KEY=KEY_VALUE -- uvx codex-as-mcp@latest

安全提示:把密钥写在命令行参数里,可能会在本机进程列表中可见;优先使用方式 A。