Computer Use MCP denies Chrome approval after TCC reset and app restart
Bug Report: Computer Use MCP denies Chrome approval after TCC reset and app restart
Summary
Computer Use in Codex App consistently fails before interacting with Google Chrome:
Computer Use approval denied via MCP elicitation for app 'com.google.Chrome'.
This started suddenly around 2026-04-22/2026-04-23. The same Computer Use flow reportedly worked a few days earlier. Restarting Codex completely multiple times and resetting macOS TCC permissions did not resolve it.
Environment
- macOS: 15.6.1 (Build 24G90)
- Codex App bundle id:
com.openai.codex - Codex App version:
26.417.41555 - Codex App build:
1858 - Computer Use helper bundle id:
com.openai.sky.CUAService - Computer Use helper version:
1.0 - Computer Use helper build:
755 - Codex CLI:
codex-cli 0.122.0 - oh-my-codex:
v0.14.2 - Node.js:
v22.19.0 - Platform:
darwin arm64 - Target app: Google Chrome, bundle id
com.google.Chrome
Reproduction Steps
- Start Codex App.
- Ensure Google Chrome is open.
- Trigger Computer Use from Codex against Google Chrome, for example:
get_app_state({"app":"Google Chrome"})
- Observe the failure:
Computer Use approval denied via MCP elicitation for app 'com.google.Chrome'.
Expected Behavior
Computer Use should request or reuse the proper permission and return Chrome window state/screenshot/accessibility tree, or show a user-actionable permission prompt.
Actual Behavior
Computer Use immediately returns:
Computer Use approval denied via MCP elicitation for app 'com.google.Chrome'.
No usable Chrome state is returned. Repeating the call produces the same failure.
Troubleshooting Already Tried
The user already fully quit and relaunched Codex App multiple times.
TCC reset was run successfully for both Codex App and the Computer Use helper:
tccutil reset Accessibility com.openai.codex
tccutil reset AppleEvents com.openai.codex
tccutil reset ScreenCapture com.openai.codex
tccutil reset Accessibility com.openai.sky.CUAService
tccutil reset AppleEvents com.openai.sky.CUAService
tccutil reset ScreenCapture com.openai.sky.CUAService
All commands returned success:
Successfully reset Accessibility approval status for com.openai.codex
Successfully reset Accessibility approval status for com.openai.sky.CUAService
Successfully reset AppleEvents approval status for com.openai.codex
Successfully reset AppleEvents approval status for com.openai.sky.CUAService
Successfully reset ScreenCapture approval status for com.openai.codex
Successfully reset ScreenCapture approval status for com.openai.sky.CUAService
After the reset and multiple Codex restarts, Computer Use still returned the same error.
Important Diagnostic Detail
Direct AppleEvents from the shell can still query Chrome successfully:
osascript -e 'tell application "Google Chrome" to get URL of active tab of front window'
Result:
This suggests Chrome automation is not globally blocked at the OS level. The failure appears specific to the Codex Computer Use MCP approval/elicitation path or the com.openai.sky.CUAService helper approval flow.
Process State Observed
Codex App and Computer Use helper were running:
/Applications/Codex.app/Contents/MacOS/Codex
/Applications/Codex.app/Contents/Resources/codex app-server --analytics-default-enabled
./Codex Computer Use.app/Contents/SharedSupport/SkyComputerUseClient.app/Contents/MacOS/SkyComputerUseClient mcp
Impact
Computer Use is unusable for Chrome-based runtime smoke tests. This blocks browser-based validation from Codex App even though ordinary shell-level AppleEvents to Chrome still work.
Request
Please investigate whether:
- Computer Use MCP app approval/elicitation state can get stuck in a denied state independent of macOS TCC.
com.openai.sky.CUAServiceneeds additional reset/permission handling after Codex App updates.- The error should surface a user-actionable recovery step instead of just
approval denied via MCP elicitation.
If there is an internal state file/cache that stores the denied elicitation result, please provide the supported way to reset it.
4 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
This repro is useful because it rules out a common false lead: if shell-level AppleEvents can query Chrome but Computer Use still fails with
approval denied via MCP elicitation, the issue is probably not "Chrome automation is globally blocked."The fastest diagnostic split I found on my own Mac:
If step 3 works but step 4 fails, the failure is likely in the app-specific approval/elicitation path rather than the raw Computer Use helper startup.
I wrote the checklist here in case it helps other people triage the same Mac setup failure:
https://igorganapolsky.github.io/openclaw-mac-ai-workstation-setup/troubleshooting.html
I also offer a paid done-for-you Mac setup for OpenClaw/Codex/Computer Use, but the important bit for this issue is the diagnostic split above:
https://igorganapolsky.github.io/openclaw-mac-ai-workstation-setup/
"Denied after TCC reset and restart" usually means TCC re-recorded approval against the wrong bundle identifier.
tccutil resetclears the table, but the next approval prompt records permission for whatever bundle ID is running at that moment — and if you have multiple Codex copies (DMG, App Store, Homebrew, signed dev build), the running bundle may not match the bundle TCC is checking on subsequent invocations.If
mdfindreturns multiple Codex.app paths, remove all but the canonical signed one,tccutil reset Accessibility com.openai.codex && tccutil reset ScreenCapture com.openai.codex, then re-launch and re-grant — TCC will record the canonical bundle.Full walkthrough of the TCC bundle-ID failure mode + 5 other root causes for "approval denied / Computer Use unavailable": https://igorganapolsky.github.io/openclaw-mac-ai-workstation-setup/troubleshooting.html
Free script in the repo (
scripts/self-diagnose.mjs) captures the codesign + running-bundle + TCC posture comparison into a redacted bundle. $19 quick read on that page confirms the root cause.The useful debugging split here is: OS permission, tool availability, and app-level approval are three separate gates.
If list_apps works, the MCP/plugin path is alive. If direct AppleEvents can query Chrome, macOS hasn’t globally blocked browser automation. If Chrome state still fails only through Computer Use, the likely failure is the app-specific elicitation/approval state between the client and helper.
A good recovery UI would probably show those as separate checks:
Right now “approval denied via MCP elicitation” collapses all of that into one error, which sends users into TCC resets even when TCC is not the failing layer.