openai/codex · error · anyhow::Error
failed to delete OAuth credentials: {err}
Error message
failed to delete OAuth credentials: {err} What it means
Error "failed to delete OAuth credentials: {err}" thrown in openai/codex.
Source
Thrown at codex-rs/cli/src/mcp_cmd.rs:625
let server = mcp_servers
.get(&name)
.ok_or_else(|| anyhow!("No MCP server named '{name}' found in configuration."))?;
let url = match &server.transport {
McpServerTransportConfig::StreamableHttp { url, .. } => url.clone(),
_ => bail!("OAuth logout is only supported for streamable_http transports."),
};
let credential_name = server.oauth_credential_name(&name);
match delete_oauth_tokens(
credential_name.as_ref(),
&url,
config.mcp_oauth_credentials_store_mode,
config.auth_keyring_backend_kind(),
) {
Ok(true) => println!("Removed OAuth credentials for '{name}'."),
Ok(false) => println!("No OAuth credentials stored for '{name}'."),
Err(err) => return Err(anyhow!("failed to delete OAuth credentials: {err}")),
}
Ok(())
}
async fn run_list(config: &Config, list_args: ListArgs) -> Result<()> {
let mcp_manager = load_mcp_manager(config).await?;
let auth_manager =
AuthManager::shared_from_config(config, /*enable_codex_api_key_env*/ true).await?;
let auth = auth_manager.auth().await;
let mcp_servers = mcp_manager.configured_servers(config).await;
let effective_mcp_servers = mcp_manager.effective_servers(config, auth.as_ref()).await;
let mut entries: Vec<_> = mcp_servers.iter().collect();
entries.sort_by_key(|(name, _)| *name);
// Standalone `mcp list` only discovers auth through local HTTP; it has
// never initialized or routed through remote execution environments.
let runtime_context = McpRuntimeContext::new(View on GitHub (pinned to 339751715c)
When it happens
Trigger: Thrown at codex-rs/cli/src/mcp_cmd.rs:625 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of openai/codex@339751715c (2026-08-25).
Data as JSON: /api/errors/8be307cfd018eced.
Report an issue: GitHub.