Codex MCP Server Implementation Plan
Overview
Create an MCP server wrapper for OpenAI Codex CLI that enables single-command integration with Claude, similar to gemini-mcp-tool.
Assumption: Codex CLI is pre-installed and configured on the target system.
Phase 1: Project Foundation
Step 1.1: Validate Dependencies
Action: VALIDATE_DEPENDENCY
Description: Verify current MCP SDK version
Details: @modelcontextprotocol/[email protected] (validated)
Verification: MCP SDK version 1.17.3 is current and stable
Step 1.2: Initialize Project
Action: CREATE_FILE
Description: Initialize Node.js project with package.json configuration
Details:
/Users/tuannvm/Projects/cli/codex-mcp-server/package.jsonwith dependencies: @modelcontextprotocol/sdk, chalk, zod, and devDependencies: typescript, tsx, @types/nodeVerification: package.json exists with correct dependencies and bin configuration pointing to dist/index.js
Step 1.3: TypeScript Configuration
Action: CREATE_FILE
Description: Create TypeScript configuration for ES modules
Details:
/Users/tuannvm/Projects/cli/codex-mcp-server/tsconfig.jsonwith ES2022 target, module: "ESNext", strict mode enabledVerification: TypeScript compiles without errors and generates proper ES module output
Phase 2: Core MCP Server Implementation
Step 2.1: Main Server Entry Point
Action: CREATE_FILE
Description: Implement main MCP server entry point
Details:
/Users/tuannvm/Projects/cli/codex-mcp-server/src/index.ts- Server initialization with stdio transport, tool registration, and request handlingVerification: Server starts without errors and responds to MCP list_tools requests
Step 2.2: Tool Definitions
Action: CREATE_FILE
Description: Define Codex tool interfaces and schemas
Details:
/Users/tuannvm/Projects/cli/codex-mcp-server/src/tools.ts- Zod schemas for codex, ping, help tools with simple parameter definitionsVerification: Tools are properly registered and expose correct parameter schemas
Step 2.3: Tool Handlers
Action: CREATE_FILE
Description: Implement tool execution handlers
Details:
/Users/tuannvm/Projects/cli/codex-mcp-server/src/handlers.ts- Execute codex exec commands via child_process, handle authentication, capture stdout/stderrVerification: Tool handlers execute codex commands successfully and return proper MCP responses
Phase 3: Authentication & Error Handling
Step 3.1: Authentication
Action: APPLY_EDIT
Description: Add basic error handling for authentication
Details: Assume Codex CLI is pre-configured; handle command execution failures gracefully
Verification: Server provides clear error messages when Codex CLI commands fail
Step 3.2: Error Handling
Action: APPLY_EDIT
Description: Implement error handling and logging
Details: Add comprehensive error handling for command failures, timeouts, and validation errors with chalk-colored output
Verification: All error conditions are properly caught and return meaningful MCP error responses
Phase 4: Distribution & Documentation
Step 4.1: NPM Package Configuration
Action: APPLY_EDIT
Description: Configure NPM package for distribution
Details: Update package.json with proper bin entry, files field, keywords, repository, and publish configuration
Verification: Package can be installed via npx and executed as a standalone command
Step 4.2: Documentation
Action: CREATE_FILE
Description: Create README with installation and usage instructions
Details:
/Users/tuannvm/Projects/cli/codex-mcp-server/README.mdwith claude mcp add command, authentication setup, and tool usage examplesVerification: README provides clear setup instructions matching the gemini-mcp-tool pattern
Phase 5: Build & Testing
Step 5.1: Build Process
Action: EXECUTE_COMMAND
Description: Build TypeScript project
Details: npm run build
Verification: TypeScript compilation succeeds and generates dist/index.js executable file
Step 5.2: Local Testing
Action: EXECUTE_COMMAND
Description: Test local execution
Details: node dist/index.js with sample MCP requests to verify tool functionality
Verification: Server responds correctly to list_tools and call_tool requests with proper Codex integration
Tools to Implement
Primary Tool: codex
codexPurpose: Execute Codex CLI in non-interactive mode for AI assistance
Category: 'codex'
Maps to:
codex exec "prompt"Parameters:
prompt(required): The coding task, question, or analysis request
Utility Tool: ping
pingPurpose: Test MCP server connection
Category: 'simple'
Parameters:
message(optional): Message to echo back (default: "pong")
Utility Tool: help
helpPurpose: Get Codex CLI help information
Category: 'simple'
Maps to:
codex --helpParameters: None
Command Mapping
Core Execution Pattern
Each MCP tool call translates directly to:
Example Command Generation
Integration Goal
Enable single-command Claude integration:
Last updated
Was this helpful?