Codex · MCP · Herramientas externas

Codex MCP: cómo conectar herramientas y servidores externos

Aprende cómo usar Model Context Protocol con Codex para conectar documentación, APIs, navegadores, plataformas de desarrollo y herramientas externas. Veremos servidores STDIO y Streamable HTTP, configuración mediante config.toml, OAuth, tokens, variables de entorno, herramientas permitidas, aprobaciones, timeouts, configuración por proyecto y cómo combinar MCP con Skills y Subagents.

STDIO Streamable HTTP OAuth Tools
Respuesta rápida

¿Qué es MCP en Codex?

MCP, o Model Context Protocol, permite conectar Codex con herramientas y fuentes de información externas. Un servidor MCP puede ofrecer herramientas, datos y acciones que Codex puede utilizar durante una tarea. Por ejemplo, Codex puede consultar documentación técnica, interactuar con herramientas de desarrollo, acceder a servicios autorizados o utilizar un navegador conectado mediante MCP.

Extensibilidad

Qué puede aportar un servidor MCP a Codex

DOC

Documentación

Consultar documentación actualizada durante la implementación.

API

APIs

Consumir herramientas proporcionadas por servicios externos.

WEB

Navegador

Inspeccionar una interfaz o aplicación web mediante herramientas compatibles.

DEV

Desarrollo

Conectar plataformas utilizadas por equipos técnicos.

DATA

Datos

Consultar fuentes que no viven dentro del repositorio.

ACT

Acciones

Ejecutar operaciones externas cuando el servidor las expone y están autorizadas.

Publicidad
Arquitectura MCP

Codex decide cuándo utilizar las herramientas disponibles

01 · TASK

Recibe una tarea

Codex analiza qué necesita para resolverla.

02 · DISCOVER

Descubre tools

El servidor MCP publica las herramientas disponibles.

03 · CALL

Invoca

Codex utiliza una herramienta cuando aporta valor.

04 · RESULT

Continúa

Incorpora el resultado al trabajo del agente.

Publicidad
Tipos de servidor

STDIO vs Streamable HTTP

STDIO

Proceso local

Codex inicia un programa local mediante un comando.

  • command
  • args
  • variables de entorno
  • directorio de trabajo
Streamable HTTP

Servidor por URL

Codex se conecta a un endpoint MCP mediante HTTP.

  • URL
  • OAuth
  • Bearer token
  • headers HTTP
Elección

Cuándo usar cada tipo

Herramienta local Se ejecuta mediante Node, Python o binario
STDIO
Servicio remoto Existe un endpoint MCP accesible por URL
HTTP
OAuth El servicio necesita autorización del usuario
HTTP
Script local Debe leer recursos disponibles en tu máquina
STDIO
Configuración compartida

Desktop, CLI e IDE utilizan la misma configuración MCP

config.toml

La configuración MCP local de Codex se almacena junto con el resto de la configuración del agente. Una vez añadido un servidor, puede estar disponible desde la aplicación de escritorio, Codex CLI y la extensión IDE.

~/.codex/config.toml
Proyecto

También puedes definir MCP solo para un repositorio

mi-proyecto/
├── .codex/
│   └── config.toml
│
├── AGENTS.md
├── src/
└── tests/
La configuración local del proyecto solo se carga para proyectos de confianza.

Esto ayuda a evitar que un repositorio desconocido pueda activar automáticamente configuración MCP sin que previamente confíes en ese proyecto.

Codex CLI

Añadir un servidor MCP desde terminal

La sintaxis para un servidor STDIO es:

codex mcp add <server-name> -- <command>

Ejemplo con Context7:

codex mcp add context7 -- npx -y @upstash/context7-mcp
Comandos

Administrar servidores MCP desde Codex CLI

# Ver servidores configurados

codex mcp list


# Ver ayuda completa

codex mcp --help


# Autenticar un servidor OAuth

codex mcp login <server-name>
Dentro de la TUI

Utiliza /mcp para ver los servidores MCP activos desde una sesión de Codex CLI.

Publicidad
config.toml

Configurar un servidor STDIO manualmente

[mcp_servers.context7]

command = "npx"

args = [
  "-y",
  "@upstash/context7-mcp"
]
Opción Uso
command Programa que inicia el servidor
args Argumentos del comando
env Variables definidas específicamente para el servidor
env_vars Variables existentes que Codex puede reenviar
cwd Directorio donde iniciar el proceso
Variables de entorno

Pasar credenciales sin escribirlas en config.toml

[mcp_servers.my_server]

command = "node"
args = ["server.js"]

env_vars = [
  "MY_API_TOKEN"
]

También puedes establecer variables concretas:

[mcp_servers.my_server.env]

MODE = "development"
No almacenes secretos directamente en el repositorio.

Si versionas .codex/config.toml, utiliza referencias a variables de entorno en lugar de credenciales reales.

Streamable HTTP

Conectar Codex con un servidor MCP remoto

[mcp_servers.example]

url = "https://mcp.example.com/mcp"

Los servidores Streamable HTTP pueden utilizar diferentes métodos de autenticación, incluyendo tokens y OAuth.

Bearer token

Autenticación mediante variable de entorno

[mcp_servers.example]

url = "https://mcp.example.com/mcp"

bearer_token_env_var = "EXAMPLE_MCP_TOKEN"
La variable contiene el secreto; config.toml solo contiene su nombre.

Así puedes mantener la configuración compartible sin guardar directamente el token.

HTTP Headers

Añadir headers personalizados

[mcp_servers.example]

url = "https://mcp.example.com/mcp"

http_headers = {
  "X-Region" = "south-america"
}

Para valores sensibles también puedes obtener headers desde variables de entorno mediante env_http_headers.

OAuth

Autenticar un servidor MCP con OAuth

Cuando el servidor soporta OAuth, inicia el proceso con:

codex mcp login <server-name>
1

Codex inicia OAuth

Abre el flujo de autorización compatible.

2

Usuario autoriza

Concede los permisos solicitados.

3

Codex guarda credenciales

Quedan asociadas al servidor MCP.

4

Las tools quedan disponibles

Según permisos y configuración.

OAuth avanzado

Servidores con Client ID pre-registrado

codex mcp add example \
  --url https://mcp.example.com \
  --oauth-client-id my-client

Codex mostrará la callback URL que debes registrar con el proveedor.

Este flujo es más avanzado.

Para servidores MCP habituales con OAuth no necesitas configurar manualmente un Client ID salvo que el proveedor lo requiera.

Tools

No tienes que exponer todas las herramientas del servidor

Allow list

Puedes limitar las tools que Codex puede utilizar de un servidor mediante enabled_tools.

[mcp_servers.browser]

url = "http://localhost:3000/mcp"

enabled_tools = [
  "open",
  "screenshot"
]
Deny list

Bloquear herramientas específicas

[mcp_servers.browser]

enabled_tools = [
  "open",
  "screenshot",
  "click"
]

disabled_tools = [
  "click"
]
disabled_tools se aplica después de enabled_tools.

En este ejemplo, aunque click aparece en la lista permitida, finalmente queda deshabilitada.

Aprobaciones

Controla cuándo Codex debe pedir permiso

[mcp_servers.browser]

default_tools_approval_mode = "prompt"
Modo Comportamiento
auto Codex aplica el comportamiento automático correspondiente
prompt Solicita aprobación antes de la tool
writes Solicita aprobación para tools que no estén marcadas como read-only
approve La herramienta queda aprobada según esa configuración
Por herramienta

Una tool puede tener su propia política

[mcp_servers.browser.tools.open]

approval_mode = "approve"


[mcp_servers.browser.tools.delete_resource]

approval_mode = "prompt"
Principio de mínimo privilegio.

Una tool de lectura puede tener una política menos restrictiva que una acción capaz de modificar o eliminar información.

Publicidad
Timeouts

Controlar cuánto espera Codex por un servidor MCP

[mcp_servers.my_server]

startup_timeout_sec = 20

tool_timeout_sec = 45
Configuración Predeterminado
startup_timeout_sec 10 segundos
tool_timeout_sec 60 segundos
Disponibilidad

Servidor opcional vs servidor obligatorio

[mcp_servers.internal_docs]

url = "https://mcp.example.com"

required = true
required = true

Si un servidor habilitado y marcado como obligatorio no puede iniciarse, Codex puede hacer fallar el inicio o reanudación correspondiente, en lugar de continuar sin esa herramienta.

Desactivar

Mantener la configuración sin iniciar el servidor

[mcp_servers.experimental]

url = "https://example.com/mcp"

enabled = false

Así puedes conservar la configuración sin eliminarla.

Contexto

Limitar cuánto contenido devuelve una tool

[mcp_servers.docs.tools.search]

output_token_limit = 12000
Útil para herramientas muy verbosas.

Si una tool puede devolver grandes cantidades de texto, limitar su salida ayuda a proteger la ventana de contexto del agente.

MCP Instructions

Un servidor MCP también puede explicar a Codex cómo usar sus tools

instructions

Durante la inicialización, Codex puede leer el campo MCP instructions enviado por el servidor y utilizarlo como guía general para trabajar con sus herramientas.

Esto resulta útil para describir:

FLOW

Orden recomendado entre tools.

LIMIT

Límites de uso.

RULE

Restricciones generales.

API

Relaciones entre operaciones.

La parte inicial debe ser especialmente clara.

OpenAI recomienda que los primeros 512 caracteres de estas instrucciones puedan entenderse por sí solos, ya que contienen la orientación más importante para decidir cómo utilizar el servidor.

Caso práctico

MCP para documentación técnica

codex mcp add context7 -- npx -y @upstash/context7-mcp

Después puedes pedir:

Antes de modificar código,
consulta la documentación
actual de la librería.

Confirma:

- API recomendada
- versión
- métodos obsoletos
- ejemplo oficial

Después implementa
el cambio mínimo
compatible.
Navegador

MCP puede extender Codex con herramientas de navegador

[mcp_servers.browser]

url = "http://localhost:3000/mcp"

enabled_tools = [
  "open",
  "screenshot"
]

default_tools_approval_mode = "prompt"

startup_timeout_sec = 20

tool_timeout_sec = 45
Muy útil para QA.

Codex puede combinar análisis del código con información obtenida desde una interfaz real cuando el servidor ofrece esas tools.

Skills + MCP

La Skill define el workflow y MCP aporta la herramienta

Skill:
api-migration-review

Workflow:

1. detectar API usada
2. consultar documentación mediante MCP
3. confirmar versión actual
4. localizar breaking changes
5. modificar implementación
6. ejecutar tests
7. generar resumen
Subagents + MCP

Un subagente puede especializarse alrededor de una herramienta MCP

name = "docs_researcher"

description = "Verifies external APIs using official documentation."

sandbox_mode = "read-only"

developer_instructions = """
Use documentation tools
to verify APIs,
versions
and supported behavior.

Do not modify code.

Return concise,
actionable findings.
"""

[mcp_servers.documentation]

url = "https://example.com/mcp"
Publicidad
Seguridad

Un servidor MCP amplía lo que el agente puede hacer

Instalar un servidor MCP equivale a añadir nuevas capacidades al agente.

Antes de configurarlo, revisa quién mantiene el servidor, qué tools expone, qué credenciales necesita y qué acciones puede ejecutar.

01

Utiliza servidores de confianza.

02

Expón solamente las tools necesarias.

03

Prefiere variables de entorno para secretos.

04

Solicita aprobación para operaciones sensibles.

05

Utiliza permisos mínimos en sistemas externos.

06

No versionar tokens ni credenciales.

Least privilege

Separa tools de lectura y escritura cuando sea posible

Read

Menor riesgo

Buscar, listar, consultar y leer información.

Write

Mayor impacto

Crear, modificar, publicar o eliminar información.

Para un workflow de investigación, normalmente no existe razón para habilitar herramientas destructivas o de escritura.

Repositorios

Revisa .codex/config.toml antes de confiar en un proyecto

Proyecto de confianza

Un repositorio puede contener configuración MCP propia. Antes de marcar como confiable un proyecto descargado desde Internet, revisa su carpeta .codex y los servidores que intenta iniciar o conectar.

Comparación

MCP no es lo mismo que llamar directamente una API

MCP API tradicional
Expone herramientas al agente Tu código consume endpoints
Codex decide cuándo usar una tool Tu aplicación controla la llamada
Interfaz estandarizada para agentes Cada API tiene su propio contrato
Útil para contextos agentic Útil para lógica determinista de aplicaciones
MCP vs Skills

Herramienta y procedimiento son capas diferentes

Skill

Procedimiento

Explica cómo ejecutar una tarea.

MCP

Capacidad

Proporciona herramientas y datos externos.

MCP vs Plugin

Un Plugin puede distribuir configuración MCP

MCP es el protocolo mediante el cual las herramientas se conectan al agente.

Un Plugin es una unidad instalable que puede combinar:

SKL

Skills.

MCP

Servidores MCP.

HOOK

Hooks y configuración asociada.

Troubleshooting

Problemas comunes con MCP en Codex

Problema Qué revisar
Servidor no aparece codex mcp list y /mcp
STDIO no inicia command, args, PATH y dependencias
Timeout al iniciar startup_timeout_sec
Tool demasiado lenta tool_timeout_sec
Error OAuth codex mcp login y scopes
Token no disponible Variable de entorno
Tool peligrosa visible enabled_tools / disabled_tools
Demasiado contexto output_token_limit
Config de proyecto ignorada Comprueba que el proyecto esté marcado como confiable
Ejemplo completo

Configuración MCP con controles de seguridad

[mcp_servers.browser]

url = "http://localhost:3000/mcp"

enabled = true

required = false

enabled_tools = [
  "open",
  "screenshot"
]

default_tools_approval_mode = "prompt"

startup_timeout_sec = 20

tool_timeout_sec = 45


[mcp_servers.browser.tools.open]

approval_mode = "approve"

output_token_limit = 30000
Buenas prácticas

Cómo utilizar MCP sin convertir Codex en un agente sobrecargado

01

Añade solo servidores que realmente aporten contexto o acciones.

02

Usa allowlists de tools cuando sea posible.

03

Limita tools de escritura a workflows que las necesiten.

04

Configura aprobación para acciones sensibles.

05

No almacenes tokens directamente en Git.

06

Define timeouts razonables.

07

Evita servidores redundantes con tools equivalentes.

08

Revisa periódicamente qué integraciones siguen siendo necesarias.

Decisión

Qué capa de Codex necesitas realmente

Regla permanente Quiero que Codex respete convenciones
AGENTS.md
Proceso reutilizable Repito el mismo workflow
Skill
Servicio externo Necesito herramientas o datos fuera del repo
MCP
Trabajo paralelo Quiero delegar investigación
Subagent
Cambios Git aislados Varios trabajos modificarán código
Worktree
Distribución Quiero empaquetar capacidades instalables
Plugin
Publicidad
Fuentes oficiales

Documentación oficial de Codex MCP

OpenAI

Model Context Protocol

STDIO, HTTP, OAuth, tools y configuración.

Ver MCP →
Publicidad
Publicidad
Preguntas frecuentes

FAQ sobre Codex MCP

MCP, o Model Context Protocol, permite conectar Codex con herramientas, fuentes de datos y servicios externos mediante servidores que exponen capacidades al agente.

Codex soporta servidores STDIO, que se ejecutan como procesos locales, y servidores Streamable HTTP, a los que accede mediante una dirección URL.

La configuración global se almacena normalmente en ~/.codex/config.toml. También puedes usar .codex/config.toml dentro de un proyecto de confianza.

Sí. La aplicación de escritorio, Codex CLI y la extensión para IDE comparten la configuración MCP local de Codex.

Puedes utilizar codex mcp add seguido del nombre del servidor y su comando o configuración. Por ejemplo, un servidor STDIO puede añadirse ejecutando codex mcp add context7 seguido del comando que inicia ese servidor.

Desde terminal puedes ejecutar codex mcp list. Dentro de la TUI de Codex puedes utilizar /mcp para consultar los servidores activos.

Sí. Los servidores Streamable HTTP pueden utilizar OAuth. El inicio de sesión puede iniciarse desde CLI mediante codex mcp login seguido del nombre del servidor.

Sí. Puedes utilizar enabled_tools como allowlist y disabled_tools como denylist. También puedes configurar políticas de aprobación generales o específicas por herramienta.

El tiempo predeterminado de inicio de un servidor es 10 segundos. El timeout predeterminado para ejecutar una herramienta es 60 segundos. Ambos valores pueden configurarse.

Una Skill define cómo ejecutar un procedimiento reutilizable. MCP proporciona herramientas y acceso a sistemas externos. Una Skill puede utilizar herramientas MCP durante su workflow.

Sí. Los agentes personalizados pueden configurar sus propios servidores MCP o utilizar las capacidades disponibles según la configuración del workflow.

No. Un servidor MCP puede ampliar considerablemente lo que Codex puede hacer. Debes revisar su procedencia, las tools que expone, sus permisos, las credenciales requeridas y aplicar el principio de mínimo privilegio.

Publicidad
Siguiente guía

Codex Plugins: instala y distribuye capacidades completas

Ya sabes cómo conectar Codex con herramientas externas mediante MCP. Ahora veremos cómo los Plugins pueden empaquetar Skills, servidores MCP y otros recursos dentro de una unidad instalable, cómo utilizarlos desde Codex y cuándo crear tus propios Plugins.

Aprender Codex Plugins →
Carrito de compra
Scroll al inicio