mcp.md +15 −2
58- `env` (optional): Environment variables to set for the server.58- `env` (optional): Environment variables to set for the server.
59- `env_vars` (optional): Environment variables to allow and forward.59- `env_vars` (optional): Environment variables to allow and forward.
60- `cwd` (optional): Working directory to start the server from.60- `cwd` (optional): Working directory to start the server from.
61- `experimental_environment` (optional): Set to `remote` to start the stdio
62 server through a remote executor environment when one is available.
63
64`env_vars` can contain plain variable names or objects with a source:
65
66```toml
67env_vars = ["LOCAL_TOKEN", { name = "REMOTE_TOKEN", source = "remote" }]
68```
69
70String entries and `source = "local"` read from Codex's local environment.
71`source = "remote"` reads from the remote executor environment and requires
72remote MCP stdio.
61 73
62#### Streamable HTTP servers74#### Streamable HTTP servers
63 75
77 89
78If your OAuth provider requires a fixed callback port, set the top-level `mcp_oauth_callback_port` in `config.toml`. If unset, Codex binds to an ephemeral port.90If your OAuth provider requires a fixed callback port, set the top-level `mcp_oauth_callback_port` in `config.toml`. If unset, Codex binds to an ephemeral port.
79 91
8092If your MCP OAuth flow must use a specific callback URL (for example, a remote devbox ingress URL or a custom callback path), set `mcp_oauth_callback_url`. Codex uses this value as the OAuth `redirect_uri` while still using `mcp_oauth_callback_port` for the callback listener port. Local callback URLs (for example `localhost`) bind on loopback; non-local callback URLs bind on `0.0.0.0` so the callback can reach the host.If your MCP OAuth flow must use a specific callback URL (for example, a remote Devbox ingress URL or a custom callback path), set `mcp_oauth_callback_url`. Codex uses this value as the OAuth `redirect_uri` while still using `mcp_oauth_callback_port` for the callback listener port. Local callback URLs (for example `localhost`) bind on the local interface; non-local callback URLs bind on `0.0.0.0` so the callback can reach the host.
81 93
82If the MCP server advertises `scopes_supported`, Codex prefers those94If the MCP server advertises `scopes_supported`, Codex prefers those
83server-advertised scopes during OAuth login. Otherwise, Codex falls back to the95server-advertised scopes during OAuth login. Otherwise, Codex falls back to the
89[mcp_servers.context7]101[mcp_servers.context7]
90command = "npx"102command = "npx"
91args = ["-y", "@upstash/context7-mcp"]103args = ["-y", "@upstash/context7-mcp"]
104env_vars = ["LOCAL_TOKEN"]
92 105
93[mcp_servers.context7.env]106[mcp_servers.context7.env]
94MY_ENV_VAR = "MY_ENV_VALUE"107MY_ENV_VAR = "MY_ENV_VALUE"
121 134
122The list of MCP servers keeps growing. Here are a few common ones:135The list of MCP servers keeps growing. Here are a few common ones:
123 136
124137- [OpenAI Docs MCP](/learn/docs-mcp): Search and read OpenAI developer docs.- [OpenAI Docs MCP](https://developers.openai.com/learn/docs-mcp): Search and read OpenAI developer docs.
125- [Context7](https://github.com/upstash/context7): Connect to up-to-date developer documentation.138- [Context7](https://github.com/upstash/context7): Connect to up-to-date developer documentation.
126- Figma [Local](https://developers.figma.com/docs/figma-mcp-server/local-server-installation/) and [Remote](https://developers.figma.com/docs/figma-mcp-server/remote-server-installation/): Access your Figma designs.139- Figma [Local](https://developers.figma.com/docs/figma-mcp-server/local-server-installation/) and [Remote](https://developers.figma.com/docs/figma-mcp-server/remote-server-installation/): Access your Figma designs.
127- [Playwright](https://www.npmjs.com/package/@playwright/mcp): Control and inspect a browser using Playwright.140- [Playwright](https://www.npmjs.com/package/@playwright/mcp): Control and inspect a browser using Playwright.