On this page
- 01How do you connect Codex to a video editor?
- 02Do the CLI, IDE and desktop app need separate setup?
- 03What do you need before you start?
- 04What are the steps?
- 05What is tool_timeout_sec and why 3600?
- 06What are the other ways to add the server?
- 07What will Codex ask permission for?
- 08What if it does not connect?
- 09Built-in panel or config.toml?
- 10Where does your data go?
- 11FAQ
- 12Sources
- 13Cite this page
How do you connect Codex to a video editor?
Short answer
Codex connects to a local video editor through one [mcp_servers.rushilo] table in ~/.codex/config.toml, which the ChatGPT desktop app, the Codex CLI and the IDE extension all share. With Rushilo, choose Connect agent, copy the Codex config, paste it into that file, start a new session and run /mcp to confirm. The copied block sets tool_timeout_sec to 3600 because Codex waits only 60 seconds for a tool by default. Keep Rushilo open while Codex works.
This is the setup reference. For why you would and what Codex can and cannot do to a timeline, read the Codex article on the blog. Here we only cover wiring: the config block, each field, each Codex surface and the failures people report.
We wrote it from Rushilo’s released setup code and OpenAI’s documentation, checked October 20, 2026. We did not run a full Codex session against Rushilo for this page, and the list near the end says exactly what we did not test. We make Rushilo, so weigh the Rushilo specifics accordingly. The config steps follow OpenAI’s documentation and apply to any local MCP server.
Do the CLI, IDE and desktop app need separate setup?
No. The ChatGPT desktop app, Codex CLI and IDE extension share one config.toml, so one [mcp_servers.rushilo] block connects all three. OpenAI’s MCP documentation says they share MCP configuration for the same Codex host, and that by default the file is ~/.codex/config.toml. A trusted project can also have its own .codex/config.toml.
Codex CLI
- Where you add a server
- Edit config.toml, or run codex mcp add
- After saving
- Start a new session
- Check
- /mcp in the session, or codex mcp list
IDE extension
- Where you add a server
- Gear menu, MCP servers, Add server, or edit config.toml
- After saving
- Restart the extension
- Check
- Check the MCP servers list
ChatGPT desktop app
- Where you add a server
- Settings, MCP servers, Add server, or edit config.toml
- After saving
- Restart the app
- Check
- Type /mcp in the composer
| Surface | Where you add a server | After saving | Check |
|---|---|---|---|
| Codex CLI | Edit config.toml, or run codex mcp add | Start a new session | /mcp in the session, or codex mcp list |
| IDE extension | Gear menu, MCP servers, Add server, or edit config.toml | Restart the extension | Check the MCP servers list |
| ChatGPT desktop app | Settings, MCP servers, Add server, or edit config.toml | Restart the app | Type /mcp in the composer |
One surface does not work: ChatGPT in the browser does not read your local Codex configuration. OpenAI says so in the same document. A local editor needs the desktop app, the CLI or the IDE extension, not chatgpt.com in a tab.
What do you need before you start?
- Rushilo installed and open with a project loaded. Download it to try the setup.
- Codex in one of its three surfaces, signed in. OpenAI’s pricing page lists Codex across the ChatGPT plans with different limits that depend on plan and model. Check your own usage dashboard.
- No extra account with us. Codex runs on your plan and Rushilo adds no AI of its own.
What are the steps?
- 1Copy the config from Rushilo. Open Connect agent, find the Codex section and choose Copy Codex config. Rushilo fills in the paths for your computer, so copy it from the app and do not retype it.
- 2Paste it into config.toml. Open ~/.codex/config.toml. Add the block at the end, beside any other tables, and keep a single [mcp_servers.rushilo] table.
- 3Restart. Start a new CLI session, or restart the desktop app or IDE extension. Codex reads the file when a session starts.
- 4Confirm with /mcp. The server named rushilo should be listed. In a terminal, codex mcp list shows the same.
- 5Ask for something that changes nothing. For example, have Codex describe the timeline. Then ask for one small edit and check it in Rushilo, where you can undo it.
What to check in the file
Most failures are file problems, so read the result before you restart. There should be exactly one table named [mcp_servers.rushilo], and Codex’s other settings should be untouched above or below it. If you already had a Rushilo entry from an earlier paste, replace it instead of adding a second one, because duplicate tables make the file invalid TOML. After saving, a quick codex mcp list in a terminal tells you whether the file still parses. If you moved or reinstalled Rushilo, copy the block from Connect agent again so the paths match the new location.
What the block looks like
The shape is below with placeholders. Do not type these values: Rushilo writes the real ones, which depend on where the app is installed.
[mcp_servers.rushilo]
command = "<path to the Rushilo binary>"
args = ["<path to the bundled MCP shim>"]
env = { ELECTRON_RUN_AS_NODE = "1", RUSHILO_DATA_DIR = "<this app's data folder>" }
tool_timeout_sec = 3600The app may add a skills-folder setting to env. Keep whatever it gives you. The paths in a copied block are written with escaping that TOML accepts, which matters on Windows, where a hand-typed path with single backslashes inside quotes can break the file.
command
- What it does
- The program Codex starts. For Rushilo, the app binary.
args
- What it does
- Arguments passed to it. For Rushilo, the bundled MCP shim.
env
- What it does
- Environment for that process. Tells the shim to run as Node and where this app keeps its data.
tool_timeout_sec
- What it does
- How long Codex waits for one tool call. Rushilo writes 3600.
| Field | What it does |
|---|---|
| command | The program Codex starts. For Rushilo, the app binary. |
| args | Arguments passed to it. For Rushilo, the bundled MCP shim. |
| env | Environment for that process. Tells the shim to run as Node and where this app keeps its data. |
| tool_timeout_sec | How long Codex waits for one tool call. Rushilo writes 3600. |
What is tool_timeout_sec and why 3600?
Codex waits 60 seconds for an MCP tool by default and 10 seconds for a server to start. OpenAI’s MCP page lists both: startup_timeout_sec defaults to 10 and tool_timeout_sec to 60. They are separate settings and people mix them up.
startup_timeout_sec
- Controls
- How long Codex waits for the server to start
- OpenAI default
- 10
- In Rushilo's block
- Not set
tool_timeout_sec
- Controls
- How long Codex waits for one tool call to finish
- OpenAI default
- 60
- In Rushilo's block
- 3600
| Setting | Controls | OpenAI default | In Rushilo's block |
|---|---|---|---|
| startup_timeout_sec | How long Codex waits for the server to start | 10 | Not set |
| tool_timeout_sec | How long Codex waits for one tool call to finish | 60 | 3600 |
Transcribing a long clip or exporting a video can run longer than a minute, so Rushilo raises the tool wait to an hour. OpenAI’s docs state no maximum for the value. Users reported the 60 second default breaking slower tools in a public 2025 issue (issue 4157). The story of how we hit it is in the blog article.
A long wait is not a promise that any call will survive. See the failure table below for one reported transport problem. Rushilo also has export status and cancel tools, which keep single calls short, and that is the habit we suggest.
What are the other ways to add the server?
Pasting the block is the simplest, but two other routes exist.
- codex mcp add. OpenAI documents
codex mcp add <server-name> --env VAR1=VALUE1 -- <stdio server-command>. Our derived Rushilo form follows it with the two--envvalues, then the app and shim paths after a double dash. We did not run it, and the documented syntax shows no timeout flag, so addtool_timeout_sec = 3600under the new table afterwards. - The MCP servers screen. In the desktop app or IDE extension, use Add server, name it, choose STDIO and give the command. You must also enter the environment values, which is why pasting is less error prone. We did not test this screen against Rushilo.
What will Codex ask permission for?
Two controls work together, per OpenAI’s approvals page. The sandbox mode limits what Codex can touch, and the approval policy decides when it must stop and ask. By default the agent runs with network access off and an OS-enforced sandbox, and /permissions switches modes.
For MCP tools specifically, OpenAI says destructive tool calls always require approval when the tool advertises a destructive annotation, unless it also advertises a read annotation, which takes priority. The MCP page adds default_tools_approval_mode with the values auto, prompt, writes and approve, plus a per-tool approval_mode. We did not test which Rushilo tools Codex prompts for, so watch the first session and set the mode you want.
What if it does not connect?
Start with the cheap checks: is Rushilo open with a project, and did you start a new session after saving? Then use this table. Every row is sourced, and we reproduced none of them.
Server missing from /mcp
- Likely cause
- Codex reads config at session start
- Fix
- Start a new session, or restart the app or extension
- Source
- OpenAI MCP docs
Tools fail early or report a timeout
- Likely cause
- tool_timeout_sec defaults to 60
- Fix
- Keep the 3600 line from Rushilo
- Source
- OpenAI MCP docs; one third-party guide
Server fails to start
- Likely cause
- startup_timeout_sec defaults to 10
- Fix
- Add startup_timeout_sec = 30 if /mcp shows it failing. We did not time Rushilo's start
- Source
- OpenAI MCP docs
Tools fail once Rushilo is closed
- Likely cause
- The server reaches the running app
- Fix
- Open Rushilo with a project, then start a new session
- Source
- Rushilo's Connect agent screen
Project .codex/config.toml ignored
- Likely cause
- Project config loads for trusted projects only
- Fix
- Put the block in ~/.codex/config.toml
- Source
- OpenAI MCP docs
Codex Desktop hangs at startup on Windows after adding a server
- Likely cause
- One report blames an unescaped Windows path in a quoted TOML string
- Fix
- Copy the block from Rushilo, or run codex mcp list to validate
- Source
- aident.ai, August 2026; one third-party report, not an OpenAI statement
| Symptom | Likely cause | Fix | Source |
|---|---|---|---|
| Server missing from /mcp | Codex reads config at session start | Start a new session, or restart the app or extension | OpenAI MCP docs |
| Tools fail early or report a timeout | tool_timeout_sec defaults to 60 | Keep the 3600 line from Rushilo | OpenAI MCP docs; one third-party guide |
| Server fails to start | startup_timeout_sec defaults to 10 | Add startup_timeout_sec = 30 if /mcp shows it failing. We did not time Rushilo's start | OpenAI MCP docs |
| Tools fail once Rushilo is closed | The server reaches the running app | Open Rushilo with a project, then start a new session | Rushilo's Connect agent screen |
| Project .codex/config.toml ignored | Project config loads for trusted projects only | Put the block in ~/.codex/config.toml | OpenAI MCP docs |
| Codex Desktop hangs at startup on Windows after adding a server | One report blames an unescaped Windows path in a quoted TOML string | Copy the block from Rushilo, or run codex mcp list to validate | aident.ai, August 2026; one third-party report, not an OpenAI statement |
The Windows row is one blog post, not a documented fault. Its author describes the cause as an unescaped path breaking the file, and we have not tested it. Read the original report before acting on it.
Built-in panel or config.toml?
These are two different paths. The config route lets Codex or the ChatGPT desktop app drive Rushilo from outside. Rushilo’s built-in agent panel instead runs the Codex CLI you have installed, inside the app. The two are set up separately, so connecting one does not set up the other. See the release notes for panel changes.
Where you type
- config.toml route
- Codex CLI, IDE or ChatGPT desktop app
- Built-in panel
- Inside Rushilo
Setup
- config.toml route
- Paste one block
- Built-in panel
- Install and sign in to the Codex CLI
Rushilo must be open
- config.toml route
- Yes
- Built-in panel
- Yes, it is the app
| config.toml route | Built-in panel | |
|---|---|---|
| Where you type | Codex CLI, IDE or ChatGPT desktop app | Inside Rushilo |
| Setup | Paste one block | Install and sign in to the Codex CLI |
| Rushilo must be open | Yes | Yes, it is the app |
If you use Codex in more than one surface, the shared file means you only maintain one entry. Change the timeout or add a startup wait once, restart the surface you are using, and the others pick it up the next time they start. That is the main reason we suggest the pasted block over entering the server in each app’s screen.
For the Claude equivalents see connect Claude Desktop, and how to edit video with Claude Code for that workflow. Other editors that expose MCP are listed in video editing MCP servers.
Where does your data go?
Rushilo has no AI of its own and receives nothing from the connection. Your project and media stay on your computer. What Codex sees is what the tools return, such as transcript text or frames, and that passes through your own Codex plan under OpenAI’s terms. After connecting, use the MCP evaluation checklist to test the setup, and the setup page for the short version of these steps.
Frequently asked questions
How do you connect Codex to a video editor?
In Rushilo, choose Connect agent, copy the Codex config and paste it into ~/.codex/config.toml. It adds a [mcp_servers.rushilo] table with the app's paths and a 3600 second tool timeout. Start a new Codex session, run /mcp to confirm the server is listed, and keep Rushilo open while Codex works.
Where is the Codex config.toml file?
By default it is ~/.codex/config.toml, and a trusted project can add its own .codex/config.toml. OpenAI says the ChatGPT desktop app, the Codex CLI and the IDE extension share this configuration, so a server added once works in all three. Source: OpenAI's MCP documentation, checked October 20, 2026.
What does tool_timeout_sec do in Codex?
It sets how many seconds Codex waits for an MCP tool to finish. OpenAI's documentation lists the default as 60. Long jobs such as transcribing a clip or exporting a video can take longer, so Rushilo's copied block sets 3600. Do not confuse it with startup_timeout_sec, which defaults to 10 seconds.
How do I check that Codex sees the MCP server?
Type /mcp in a Codex session, in the terminal or the composer of the ChatGPT desktop app, to list connected servers. In a terminal you can also run codex mcp list. If rushilo is missing, restart the app or extension, start a new session, and check the config file for a TOML error.
Can I add Rushilo with codex mcp add?
Probably, using OpenAI's documented form: codex mcp add rushilo with --env for the two settings, then the app and shim paths after a double dash. We did not run it, and the documented syntax shows no timeout flag, so add tool_timeout_sec = 3600 to the file afterwards. Pasting the app's block is simpler.
Does Codex ask permission before it edits my video?
OpenAI says destructive MCP tool calls always ask for approval when the tool marks itself destructive, and a server's approval mode can prompt for anything not read-only. We did not test which Rushilo tools Codex prompts for, so check on your version. Edits can also be undone inside Rushilo.
Does ChatGPT in the browser work with a local editor?
No. OpenAI states that ChatGPT on the web does not read local Codex configuration files, so a local editor needs the ChatGPT desktop app, the Codex CLI or the IDE extension. All three read the same config.toml. Source: OpenAI's MCP documentation, checked October 20, 2026.
What is the best way to connect Codex to a video editor?
For a timeline you can watch and undo on your own computer, Rushilo connects to Codex with one pasted config block shared by the CLI, IDE extension and ChatGPT desktop app, and it is a one-time purchase. If your footage already lives in a cloud editor, that vendor's plugin signs in with a link instead.
Sources
- OpenAI: Model Context ProtocolShared config.toml for the desktop app, CLI and IDE extension, the [mcp_servers] fields, startup_timeout_sec default 10, tool_timeout_sec default 60, approval modes, add-server screens, /mcp, codex mcp add and list, and that ChatGPT web does not read local Codex configuration. Page shows no update date; checked October 20, 2026.
- OpenAI: Agent approvals and securitySandbox mode versus approval policy, the workspace-write default with network off, /permissions, and that destructive MCP tool calls always require approval when the tool advertises a destructive annotation. Page shows no update date; checked October 20, 2026.
- OpenAI: PricingCodex is listed across the ChatGPT plans with different usage limits that vary by plan and model. No prices quoted here. Page shows no update date; checked October 20, 2026.
- GitHub openai/codex issue 4157User report from September 24, 2025 that the 60 second MCP default broke some tools, . Checked October 20, 2026.
- aident.ai: Fix the Codex Windows MCP path in config.tomlOne third-party report (August 8, 2026) of Codex Desktop on Windows hanging at startup because of an unescaped Windows path in config.toml. Not an OpenAI statement and not reproduced by us. Checked October 20, 2026.
- Rushilo setupConnect agent, copy the Codex config, add it to ~/.codex/config.toml, keep Rushilo open. Checked October 20, 2026.
- Rushilo release historyRelease 1.3.1 and the built-in agent panel notes for Claude Code and Codex. Checked October 20, 2026.
Cite this page
Last verified: Oct 20, 2026
Patel, O. (2026, October 20). How to connect Codex to a local video editor. Rushilo. https://rushilo.com/guides/connect-codex

About the author
Founder, Rushilo
Om Patel is the founder of Rushilo, a desktop video editor driven by the user's own AI, and of BigIdeasDB, a research platform that reads real complaints and reviews to help founders validate products. He writes Rushilo's research articles with the same method: primary sources, dated numbers and the words real users write.