๐ codemcp ๐
codemcp is a small mcp server that exposes agentic coding through codex and claude code. it does not reimplement a coding agent, it forwards normalized MCP tools to the closest official agent interface:
- Codex via
codex mcp-server - Claude Code via
claude -p/claude --resume
installation
install once with composer:
composer require vielhuber/codemcp
then add this to your files:
require __DIR__ . '/vendor/autoload.php';
use vielhuber\codemcp\codemcp;
setup
codemcp reads configuration from the .env in your project root.
CODEMCP_PROVIDER=codex
CODEMCP_WORKDIR=/app
CODEMCP_ALLOW_WRITE=false
MCP_TOKEN=
Claude Code also has claude mcp serve, but that exposes Claude Code's tools to another MCP client. For running Claude Code as the coding agent, codemcp uses print/resume mode.
codemcp expects codex and claude in the local node_modules/.bin directory of the project where the MCP server is started.
usage
$code = codemcp::create();
$result = $code->start(
prompt: 'Review this project and list the highest-risk bugs.',
workdir: '/app',
provider: 'codex'
);
print_r($result);
mcp server
codemcp ships as a standalone MCP server:
vendor/bin/mcp-server.php
available tools:
start(prompt, workdir?, provider?)continue(session_id, prompt)status(session_id?)providers()
write access
Set CODEMCP_ALLOW_WRITE=true when the agent may edit files. Otherwise Codex runs read-only and Claude Code runs in plan mode.
tests
vendor/bin/phpunit