@dhrupo/codex-claude-bridge
v0.1.1
Published
Expose Claude Code as MCP tools for Codex.
Maintainers
Readme
codex-claude-bridge
Use Claude Code from inside Codex.
@dhrupo/codex-claude-bridge exposes Claude Code as MCP tools that Codex can call, and also ships a codex-claude helper command for common workflows.
What You Get
codex-claude-mcp: an MCP server that wraps the localclaudeCLIcodex-claude: a helper command that asks Codex to call Claude tools- Three MCP tools:
claude_askclaude_reviewclaude_delegate
- Extra helper workflows:
codex-claude statuscodex-claude doctorcodex-claude compare
Requirements
- Node.js
>=18.18.0 codexinstalled and authenticatedclaudeinstalled and authenticated
Quick checks:
codex --version
claude --version
claude auth statusInstall
Install the package:
npm install -g @dhrupo/codex-claude-bridgeRegister the MCP bridge in Codex:
codex-claude installThat creates a global Codex MCP server named claude-bridge.
Manual alternatives:
codex mcp add claude-bridge -- codex-claude-mcp
codex mcp add claude-bridge -- npx -y @dhrupo/codex-claude-bridgeVerify:
codex mcp list
codex-claude status
codex-claude doctorUsage
Helper Commands
Ask Claude through Codex:
codex-claude ask "Summarize the current repository."Run a review:
codex-claude review
codex-claude review "Review the current workspace for bugs and missing tests."Run a review and compare Claude vs Codex side by side:
codex-claude review --compare "Review the current workspace for bugs and missing tests."Delegate an implementation task:
codex-claude delegate "Fix the failing tests with the smallest safe patch."Compare Claude and Codex on the same prompt in one readable report:
codex-claude compare "Review this architecture and suggest the safest refactor."Use separate model choices when comparing:
codex-claude compare \
--codex-model gpt-5.4 \
--claude-model sonnet \
"Summarize the tradeoffs in this module."Write reports to disk:
codex-claude compare --out compare.md "Review this change and compare results."
codex-claude status --json --out status.jsonIf you are outside a git repository, add:
--skip-git-repo-checkExample:
codex-claude ask --cwd /path/to/project --skip-git-repo-check "Reply with exactly OK."You can also pass through Claude-focused options when using ask, review, or delegate:
codex-claude review \
--model sonnet \
--permission-mode dontAsk \
--append-system-prompt "Focus on reliability and regression risk."Direct Codex MCP Usage
Once installed, Codex can call these tools directly:
claude_ask: read-only promptingclaude_review: stricter review passclaude_delegate: writable implementation/delegation flow
Example:
codex exec --cd /path/to/project --skip-git-repo-check \
'Use the MCP tool `claude_ask` exactly once. Return only the tool result. Tool arguments: {"prompt":"Summarize this repo.","cwd":"/path/to/project","outputFormat":"text"}'How It Works
- Codex discovers the
claude-bridgeMCP server - Codex calls one of the bridge tools
- The bridge runs the local
claude --printcommand - Claude output is returned through MCP back to Codex
This is an MCP bridge, not a native Codex slash-command plugin.
Status And Comparison
codex-claude status checks:
- whether
codexis installed - whether
claudeis installed - whether Claude auth is available
- whether the
claude-bridgeMCP server is registered in Codex
codex-claude doctor adds a simple pass/fail diagnostic summary and suggested fixes.
codex-claude compare runs both tools on the same prompt:
- Claude runs directly through
claude --print - Codex runs directly through
codex exec - the command returns a single report with:
- Claude output
- Codex output
- a line-by-line diff block for quick human review
--json returns machine-readable report data for status, doctor, and compare.
--out <file> writes the rendered or JSON report to disk and also prints it to stdout.
Development
Install dependencies:
npm installRun tests:
npm testStart the MCP server directly:
npm startPublishing
This package is published on npm as:
@dhrupo/codex-claude-bridgeThe repo includes a GitHub Actions publish workflow. To publish a new version:
- Bump
package.json - Commit and push to
main - Create and push a matching tag like
v0.1.1
Troubleshooting
If the bridge works but Claude returns an auth or access error, test Claude directly first:
claude -p --output-format text "Reply with exactly OK."If that fails, fix Claude access before testing through Codex.
If Codex is outside a git repo, use --skip-git-repo-check.
If needed, remove and re-add the MCP server:
codex mcp remove claude-bridge
codex mcp add claude-bridge -- codex-claude-mcp