Commit Graph

1 Commits

Author SHA1 Message Date
Mohamed Boudra
007b41e455 Fix Codex MCP agent-control access - pass MCP servers to Codex tool call
WHAT:
- Fixed `buildCodexMcpConfig()` to include MCP servers in the Codex tool call
- Added `CodexMcpServerConfig` and `CodexConfigPayload` types for proper typing
- Added `managedAgentId` parameter to append caller agent ID to agent-control URL
- Built MCP servers config including:
  1. `agent-control` HTTP MCP with URL and `http_headers`
  2. `playwright` STDIO MCP server
  3. User-provided MCP servers from `config.mcpServers`
- Added `managedAgentId` property to `CodexMcpAgentSession` class
- Updated `setManagedAgentId()` to store the ID
- Updated all call sites of `buildCodexMcpConfig()` to pass managed agent ID

ROOT CAUSE:
Claude provider builds MCP servers config and passes to Claude SDK.
Codex MCP provider only passed `config.extra.codex` - completely ignoring
`config.agentControlMcp` and `config.mcpServers`. Codex CLI expects MCP
servers in `config.mcp_servers` field with `http_headers` (not `headers`)
for HTTP servers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 16:32:34 +07:00