
Codex Bridge
STDIOMCP server bridging AI coding assistants with OpenAI Codex CLI for code analysis
MCP server bridging AI coding assistants with OpenAI Codex CLI for code analysis
A lightweight MCP (Model Context Protocol) server that enables AI coding assistants to interact with OpenAI's Codex AI through the official CLI. Works with Claude Code, Cursor, VS Code, and other MCP-compatible clients. Designed for simplicity, reliability, and seamless integration.
mcp>=1.0.0
and Codex CLIInstall Codex CLI:
npm install -g @openai/codex-cli
Authenticate with Codex:
codex
Verify installation:
codex --version
🎯 Recommended: PyPI Installation
# Install from PyPI pip install codex-bridge # Add to Claude Code with uvx (recommended) claude mcp add codex-bridge -s user -- uvx codex-bridge
Alternative: From Source
# Clone the repository git clone https://github.com/shelakh/codex-bridge.git cd codex-bridge # Build and install locally uvx --from build pyproject-build pip install dist/*.whl # Add to Claude Code claude mcp add codex-bridge -s user -- uvx codex-bridge
Development Installation
# Clone and install in development mode git clone https://github.com/shelakh/codex-bridge.git cd codex-bridge pip install -e . # Add to Claude Code (development) claude mcp add codex-bridge-dev -s user -- python -m src
Codex Bridge works with any MCP-compatible AI coding assistant - the same server supports multiple clients through different configuration methods.
# Recommended installation claude mcp add codex-bridge -s user -- uvx codex-bridge # Development installation claude mcp add codex-bridge-dev -s user -- python -m src
Global Configuration (~/.cursor/mcp.json
):
{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": {} } } }
Project-Specific (.cursor/mcp.json
in your project):
{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": {} } } }
Go to: Settings
→ Cursor Settings
→ MCP
→ Add new global MCP server
Configuration (.vscode/mcp.json
in your workspace):
{ "servers": { "codex-bridge": { "type": "stdio", "command": "uvx", "args": ["codex-bridge"] } } }
Alternative: Through Extensions
uvx codex-bridge
Add to your Windsurf MCP configuration:
{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": {} } } }
cline_mcp_settings.json
:{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": {} } } }
Go to: Settings
→ MCP
→ Add MCP Server
{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": {} } } }
codex-bridge
STDIO
uvx
["codex-bridge"]
Using the UI:
uvx codex-bridge
Manual Configuration:
"augment.advanced": { "mcpServers": [ { "name": "codex-bridge", "command": "uvx", "args": ["codex-bridge"], "env": {} } ] }
mcp_settings.json
:{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": {} } } }
{ "command": "uvx", "args": ["codex-bridge"], "env": {} }
For pip-based installations:
{ "command": "codex-bridge", "args": [], "env": {} }
For development/local testing:
{ "command": "python", "args": ["-m", "src"], "env": {}, "cwd": "/path/to/codex-bridge" }
For npm-style installation (if needed):
{ "command": "npx", "args": ["codex-bridge"], "env": {} }
Once configured with any client, use the same two tools:
The server implementation is identical - only the client configuration differs!
By default, Codex Bridge uses a 90-second timeout for all CLI operations. For longer queries (large files, complex analysis), you can configure a custom timeout using the CODEX_TIMEOUT
environment variable.
By default, Codex CLI requires being inside a Git repository or trusted directory. If you need to use Codex Bridge in directories that aren't Git repositories, you can set the CODEX_SKIP_GIT_CHECK
environment variable.
⚠️ Security Warning: Only enable this flag in trusted environments where you control the directory structure.
Example configurations:
# Add with custom timeout (120 seconds) claude mcp add codex-bridge -s user --env CODEX_TIMEOUT=120 -- uvx codex-bridge # Add with git repository check disabled (for non-git directories) claude mcp add codex-bridge -s user --env CODEX_SKIP_GIT_CHECK=true -- uvx codex-bridge # Add with both configurations claude mcp add codex-bridge -s user --env CODEX_TIMEOUT=120 --env CODEX_SKIP_GIT_CHECK=true -- uvx codex-bridge
{ "mcpServers": { "codex-bridge": { "command": "uvx", "args": ["codex-bridge"], "env": { "CODEX_TIMEOUT": "120", "CODEX_SKIP_GIT_CHECK": "true" } } } }
Configuration Options:
CODEX_TIMEOUT:
CODEX_SKIP_GIT_CHECK:
consult_codex
Direct CLI bridge for simple queries with structured JSON output by default.
Parameters:
query
(string): The question or prompt to send to Codexdirectory
(string): Working directory for the query (default: current directory)format
(string): Output format - "text", "json", or "code" (default: "json")timeout
(int, optional): Timeout in seconds (recommended: 60-120, default: 90)Example:
consult_codex( query="Find authentication patterns in this codebase", directory="/path/to/project", format="json", # Default format timeout=90 # Default timeout )
consult_codex_with_stdin
CLI bridge with stdin content for pipeline-friendly execution.
Parameters:
stdin_content
(string): Content to pipe as stdin (file contents, diffs, logs)prompt
(string): The prompt to process the stdin contentdirectory
(string): Working directory for the queryformat
(string): Output format - "text", "json", or "code" (default: "json")timeout
(int, optional): Timeout in seconds (recommended: 60-120, default: 90)consult_codex_batch
Batch processing for multiple queries - perfect for CI/CD automation.
Parameters:
queries
(list): List of query dictionaries with 'query' and optional 'timeout'directory
(string): Working directory for all queriesformat
(string): Output format - currently only "json" supported for batchExample:
consult_codex_with_stdin( stdin_content=open("src/auth.py").read(), prompt="Analyze this auth file and suggest improvements", directory="/path/to/project", format="json", # Default format timeout=120 # Custom timeout for complex analysis )
# Simple research query consult_codex( query="What authentication patterns are used in this project?", directory="/Users/dev/my-project" )
# Analyze specific files with open("/Users/dev/my-project/src/auth.py") as f: auth_content = f.read() consult_codex_with_stdin( stdin_content=auth_content, prompt="Review this file and suggest security improvements", directory="/Users/dev/my-project", format="json", # Structured output timeout=120 # Allow more time for detailed analysis )
# Process multiple queries at once consult_codex_batch( queries=[ {"query": "Analyze authentication patterns", "timeout": 60}, {"query": "Review database implementations", "timeout": 90}, {"query": "Check security vulnerabilities", "timeout": 120} ], directory="/Users/dev/my-project", format="json" # Always JSON for batch processing )
codex
commandcodex-bridge/
├── src/
│ ├── __init__.py # Entry point
│ ├── __main__.py # Module execution entry point
│ └── mcp_server.py # Main MCP server implementation
├── .github/ # GitHub templates and workflows
├── pyproject.toml # Python package configuration
├── README.md # This file
├── CONTRIBUTING.md # Contribution guidelines
├── CODE_OF_CONDUCT.md # Community standards
├── SECURITY.md # Security policies
├── CHANGELOG.md # Version history
└── LICENSE # MIT license
# Install in development mode pip install -e . # Run directly python -m src # Test CLI availability codex --version
The server automatically integrates with Claude Code when properly configured through the MCP protocol.
# Install Codex CLI npm install -g @openai/codex-cli # Authenticate codex auth login # Test codex --version
codex
command is in your PATHcodex auth login
We welcome contributions from the community! Please read our Contributing Guidelines for details on how to get started.
This project is licensed under the MIT License - see the LICENSE file for details.
See CHANGELOG.md for detailed version history.
docs/
directoryFocus: A simple, reliable bridge between Claude Code and Codex AI through the official CLI.