MCP server exposing Codex tools by calling the codex-rs crates in-process.
Four tools with complete input schemas and descriptions. shell_command, apply_patch, and view_image have clear, actionable descriptions (60-120 chars). Schemas are well-typed with nullable fields documented. However, subagent lacks output schema documentation, and error handling guidance is minimal. No tool annotations (readOnlyHint/destructiveHint) despite shell_command and apply_patch being irreversible/write operations. Parameter descriptions are present but terse; no enum constraints or format specifications. Tests confirm structured output for shell_command but not for others.
The `apply_patch` tool can be used to edit files. Provide the patch in the apply_patch format (*** Begin Patch / *** Add File: / *** Update File: / *** Delete File: / *** End Patch).
Runs a shell command and returns its output. - Always set the `workdir` param when using the shell_command function. Do not use `cd` unless absolutely necessary.
Delegate a task to a non-interactive Codex agent.
View a local image file from the filesystem when visual inspection is needed. Use this for images already available on disk.
subagent tool lacks output schema documentation. Tests do not verify structured output; schema is inferred but not explicitly registered.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite shell_command and apply_patch being irreversible operations. LLMs cannot infer safety properties.
Error handling lacks recovery guidance. shell_command reports 'exit code 3' and 'timed out' but does not suggest next steps (retry, adjust timeout, check command syntax).
Parameter descriptions are minimal (10-30 chars). 'Working directory for the command' and 'Shell script to run' lack format/constraint details. No guidance on when to use workdir vs cd.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2025-06-18+ | v2 |
apply_patch description references 'apply_patch format' but does not explain the format inline or link to documentation. LLMs must infer syntax from examples.