{"record":{"id":"10075c7e0533914d","repo":"openai/codex","slug":"host-owned-mcp-server-codex-apps-mcp-server-name","errorCode":null,"errorMessage":"host-owned MCP server '{CODEX_APPS_MCP_SERVER_NAME}' is not enabled","messagePattern":"host-owned MCP server '(.+?)' is not enabled","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/app-server/src/request_processors/apps_processor/installed.rs","lineNumber":72,"sourceCode":"            let auth = self.auth_manager.auth().await;\n            let runtime_enabled = config\n                .features\n                .apps_enabled_for_auth(auth.as_ref().is_some_and(CodexAuth::uses_codex_backend));\n\n            let mcp_manager = self.thread_manager.mcp_manager();\n            let mut mcp_config = mcp_manager.runtime_config(&config).await;\n            // Installed-app discovery has no active turn or reviewer.\n            mcp_config.permission_profile = PermissionProfile::default();\n            let mcp_config = Arc::new(mcp_config);\n            let mut mcp_servers = effective_mcp_servers(&mcp_config, auth.as_ref());\n            mcp_servers.retain(|name, _| name == CODEX_APPS_MCP_SERVER_NAME);\n            let cache_key = connector_runtime_context_key(auth.as_ref());\n            let previous_snapshot = mcp_manager\n                .codex_apps_tools_cache()\n                .current_snapshot(config.codex_home.to_path_buf(), cache_key.clone());\n            let snapshot = if force_refresh && runtime_enabled {\n                let refresh_result = async {\n                    anyhow::ensure!(\n                        !mcp_servers.is_empty(),\n                        \"host-owned MCP server '{CODEX_APPS_MCP_SERVER_NAME}' is not enabled\"\n                    );\n                    let startup_timeout = mcp_servers\n                        .get(CODEX_APPS_MCP_SERVER_NAME)\n                        .and_then(|server| server.config().startup_timeout_sec)\n                        .unwrap_or(CONNECTOR_RUNTIME_REFRESH_TIMEOUT);\n                    let runtime_context = McpRuntimeContext::new(\n                        self.thread_manager.environment_manager(),\n                        config.cwd.to_path_buf(),\n                    );\n                    let cancellation_token = CancellationToken::new();\n                    let codex_apps_auth_manager =\n                        host_owned_codex_apps_enabled(&mcp_config, auth.as_ref())\n                            .then(|| Arc::clone(&self.auth_manager));\n                    let runtime = McpRuntime::new(McpRuntimeInput {\n                        startup_policy: McpStartupPolicy::Eager,\n                        config: Arc::clone(&mcp_config),","sourceCodeStart":54,"sourceCodeEnd":90,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/app-server/src/request_processors/apps_processor/installed.rs#L54-L90","documentation":"Error \"host-owned MCP server '{CODEX_APPS_MCP_SERVER_NAME}' is not enabled\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/app-server/src/request_processors/apps_processor/installed.rs:72 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"339751715c64496cb86246bfb3935f40e309dd3d","analyzedAt":"2026-08-25T05:35:09.876Z","schemaVersion":2},"datasetVersion":"2026-08-25T06:17:31.827Z"}