mcp-server-codex
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CODEX_BIN | No | Chemin ou nom du binaire Codex. Défaut : codex | codex |
| CODEX_HOME | No | Racine Codex : sessions et images générées y sont lues. Défaut : ~/.codex | ~/.codex |
| CODEX_MCP_MAX_EVENTS | No | Taille du tampon d'événements par job. Défaut : 2000. | 2000 |
| CODEX_MCP_ALLOWED_ROOTS | No | Répertoires autorisés, séparés par ';' (Windows) ou ':'. Liste exhaustive, remplace le défaut (cwd du serveur). | |
| CODEX_MCP_ALLOW_DANGEROUS | No | À '1', débloque danger-full-access et le contournement des approbations. Défaut : '0'. | 0 |
| CODEX_MCP_DEFAULT_SANDBOX | No | Sandbox par défaut : read-only, workspace-write ou danger-full-access. Défaut : workspace-write. | workspace-write |
| CODEX_MCP_JOB_TTL_SECONDS | No | Durée de consultation d'un job terminé. Défaut : 1800. | 1800 |
| CODEX_MCP_DEFAULT_TIMEOUT_SECONDS | No | Attente avant bascule en arrière-plan. 0 = toujours en arrière-plan. Défaut : 120. | 120 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| codex_execA | Start a new Codex agent session against a prompt. Codex can read and edit files and run commands in the sandbox. Returns the final message, the commands it ran and a thread_id you can pass to codex_resume. Long runs move to the background and return a job_id. |
| codex_resumeA | Continue a previous Codex session with its full history, either by session_id or with last=true for the most recent one. Use this instead of codex_exec to follow up on earlier work without re-explaining the context. |
| codex_forkA | Branch an existing Codex session into a new one, leaving the original untouched. Useful for trying a different approach from a shared starting point. |
| codex_reviewA | Run a Codex code review over uncommitted changes (default), a diff against a base branch, or a specific commit. Optionally steer it with custom instructions. |
| codex_applyA | Apply the latest diff produced by a Codex task to the local working tree, as a git apply. Modifies files on disk. |
| codex_list_sessionsA | List recorded Codex sessions with their id, name, working directory and last update, read straight from disk. Use it to find a session_id for codex_resume or codex_fork. |
| codex_generate_imageA | Generate an image using the image_gen tool built into Codex, and save it to output_path. No API key is needed: it runs through your Codex session. Returns the path of the file written, not the image bytes. |
| codex_job_statusA | Report the state of a run that moved to the background: whether it is still running, its exit code, how long it has taken and how many events it has produced. |
| codex_job_logsA | Page through the JSONL events of a background run. Pass the returned next_cursor back as "since" to read only what is new. Filter with "types" to cut the noise. |
| codex_job_cancelA | Stop a run that is still going: SIGTERM first, then SIGKILL after a grace period. Reports honestly whether this call is what cancelled it. |
| codex_inboxA | Collect anything a running Codex agent has sent — a question it is blocked on, a finding, a warning. Cheap and non-blocking, so it is worth calling between other tools while a run is in flight. Pass the next_cursor from the previous call to see only what is new; awaiting_answer counts the questions still waiting on codex_reply. |
| codex_replyA | Answer a question codex_inbox reported. The Codex run is blocked waiting for exactly this, so answering promptly is what keeps it moving; if it has already timed out the answer is still delivered and collected at its next turn. Fails if no such question exists, rather than posting an answer nobody is waiting for. |
| codex_tellA | Send a running Codex agent something it did not ask for — a correction, a change of direction, a stop. It arrives at the next tool turn of that run rather than interrupting it mid-command. Omit job_id to reach every run at once. |
| codex_preset_listA | Show the image presets this instance is configured with, in full — subject, style, constraints and reference art — plus the file they come from. The description of codex_generate_image only names them; use this to see what a preset actually contains before using or changing it. |
| codex_preset_reloadA | Re-read the presets file from disk, picking up edits made outside this server without a restart. If the file has become unusable the call fails and the presets already loaded are kept, so a bad edit never leaves the instance with none. |
| codex_preset_setA | Define a named preset for a subject drawn repeatedly, so later calls name it instead of restating the description. Written to the presets file, so it survives a restart, and usable immediately. Replaces a preset of the same name outright rather than merging, so a field can be removed. |
| codex_preset_updateA | Change some fields of an existing preset and leave the rest alone. Use this rather than codex_preset_set when adjusting one thing: restating a long subject just to tweak a style is how a subject drifts. Pass null for a field to clear it. Fails if the preset does not exist. |
| codex_preset_deleteA | Remove a preset from this instance and from its presets file. Fails if no preset of that name exists, rather than reporting success for a name that was never there. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 18 tools
Each tool has a clearly distinct purpose: session lifecycle, job control, agent messaging, and preset management are all cleanly separated. Even the closely related codex_inbox, codex_reply, and codex_tell are easy to tell apart from their descriptions.
All tools share a consistent codex_ prefix and snake_case format, with clear verb or noun segments following it. The naming is predictable enough that an agent can infer the role of an unfamiliar tool from the pattern.
18 tools is slightly above the ideal compact range, but the count is justified by the multiple coherent clusters: sessions, jobs, inbox/reply messaging, presets, and code review. It feels organized rather than bloated.
The core lifecycle is well covered: start, resume, fork, list, monitor, cancel, and communicate with runs, plus full preset CRUD. Minor gaps exist, such as no explicit session deletion or a way to list all background jobs, but they do not block the main workflows.