MCP — conectar servidores externos
Configurar en config.toml
Sección titulada «Configurar en config.toml»[mcp_servers.github]command = "npx"args = ["@modelcontextprotocol/server-github"]env = { GITHUB_TOKEN = "${GITHUB_TOKEN}" }
[mcp_servers.linear]url = "https://mcp.linear.app/mcp"auth = "oauth".codex/config.toml a nivel de proyecto solo se carga si el proyecto es “trusted”.
Servidor local (stdio) vs remoto
Sección titulada «Servidor local (stdio) vs remoto»| Tipo | Campos |
|---|---|
| Local | command, args, cwd, env, startup_timeout_sec, tool_timeout_sec |
| Remoto | url, bearer_token_env_var, http_headers, auth = "oauth", scopes |
Control fino por tool
Sección titulada «Control fino por tool»[mcp_servers.github]enabled_tools = ["create_issue", "list_repos"]disabled_tools = ["delete_repo"]
[mcp_servers.github.tools.delete_repo]approval_mode = "always"Nivel de detalle que ninguna de las otras 3 herramientas documentadas aquí ofrece — permite, por ejemplo, que un servidor esté disponible pero una tool puntual (delete_repo) siempre pida aprobación explícita.
Resumen
Sección titulada «Resumen»| Campo | Para qué |
|---|---|
[mcp_servers.<id>] | Un servidor, local o remoto según los campos |
enabled_tools / disabled_tools | Filtrar qué tools del servidor están disponibles |
[mcp_servers.<id>.tools.<tool>] | Override de aprobación por tool individual |
Consideraciones
Sección titulada «Consideraciones».codex/config.tomlde proyecto necesita que el proyecto esté marcado como trusted para cargarse — un repo recién clonado no confía en su propio MCP config hasta que el usuario lo aprueba.