Exode MCP in Codex: One Command and a config.toml Entry
Codex MCP servers are configured in ~/.codex/config.toml, each under its own [mcp_servers.<name>] table, or added from the terminal with codex mcp add exode -- npx -y claude-exode-mcp. The CLI and the IDE extension read the same file, so one entry covers both.
Codex stores MCP servers in TOML rather than JSON, which makes it the odd one out among the clients on this site. The fields are the same idea: a command, its arguments, and optional environment variables.
This page covers the one-line install, the TOML entry, the project-scoped file, and the two settings that fix most path problems in Codex.
Add it from the terminal
The fastest path is the CLI. Everything after -- is the launch command, so the entry is written for you and shows up in config.toml.
codex mcp add exode -- npx -y claude-exode-mcp
# confirm the entry
codex mcp listOr write the config.toml entry yourself
Each server is a [mcp_servers.<name>] table. command is required, args and env are optional, and cwd sets the working directory the server starts in, which is a cleaner way to handle the workspace than an environment variable.
Use env_vars when a value should be forwarded from your own shell instead of written into the file. That keeps secrets out of a config you might commit, though the Exode server needs no secrets at all.
[mcp_servers.exode]
command = "npx"
args = ["-y", "claude-exode-mcp"]
cwd = "/Users/you/projects/motion"
[mcp_servers.exode.env]
WORKSPACE_ROOT = "/Users/you/projects/motion"One entry, both surfaces
The Codex CLI and the IDE extension share this configuration, so adding the server once makes it available in both. A trusted project can also carry its own .codex/config.toml; treat that file as code and review it, because a cloned repository can ship one.
Prompting Codex for motion
Codex reads the working directory, so it can see the .exode files next to the code it is already editing. Name the file, name the states, and say what must not change.
Because the workspace root is now explicit, the prompt can use short relative paths, which is where this setup is easier than the JSON clients.
When Codex will not connect
If codex mcp list shows the entry but no tools appear in a session, the process is exiting. Run the command by hand. If paths resolve to the wrong place, check cwd and WORKSPACE_ROOT before touching the prompt.
A project-scoped config only applies in projects Codex trusts, so a project .codex/config.toml that seems ignored is usually a trust decision rather than a formatting error.
- Entry present, no tools: the npx process is failing to start.
- Tools present, wrong files: fix cwd or WORKSPACE_ROOT.
- Project file ignored: the project is not marked trusted.
Frequently asked questions
We make ExodeUI and its MCP server. Treat what an agent produces as a draft, the same way you would treat code from a new teammate.
ExodeUI runs in the browser and on desktop. One .exode file plays in React, Vue, Svelte, Angular, Solid, React Native, SwiftUI and Flutter.