How to add an MCP server to Codex
Codex reads its MCP servers from ~/.codex/config.toml and connects to them over stdio (a local process) and Streamable HTTP.
119,278 of the 123,036 servers we can write a config for work in it.
A local server
A local server runs on your machine, started by Codex from its package. It needs Node.js installed first. For example, Azure MCP Server goes in a terminal:
codex mcp add azure -- npx -y @azure/[email protected] server start A remote server
A remote server runs on its publisher's machines, and Codex connects to its address. Nothing needs installing. For example, Context7 goes in a terminal:
codex mcp add context7 --url https://mcp.context7.com/mcp Which servers work in Codex
Codex can send a key in a header, so the 3,251 servers that need one work in it.
| Runs | Servers | In Codex? |
|---|---|---|
| Local (stdio) | 85,194 | Works |
| Remote, Streamable HTTP | 30,880 | Works |
| Remote, Streamable HTTP, key in a header | 3,204 | Works |
| Remote, HTTP+SSE | 3,711 | No |
| Remote, HTTP+SSE, key in a header | 47 | No |
If the server does not show up
- A remote server that does not connect
- The environment variables servers ask for
- Codex's own MCP documentation
Matches the official docs The configs follow Codex's MCP docs, read on 2026-10-31.