Codex Desktop shows Readwise MCP/plugin as available when OAuth does not complete and no tools are exposed
What version of the Codex App are you using (From “About Codex” dialog)?
I could not confirm the Desktop app version from the current UI during the repro. The local CLI/runtime available on the same machine reports:
codex-cli 0.124.0
What subscription do you have?
Unknown / not relevant to the observed UI state bug.
What platform is your computer?
macOS 26.3 (25D125), arm64.
What issue are you seeing?
There appears to be a false-positive connection/availability state for the Readwise MCP/plugin in Codex Desktop.
The Readwise authorization flow does not successfully complete, and the active Codex thread does not expose any Readwise/Reader tools. However, from the Codex side the Readwise plugin/MCP can still appear available enough to be referenced/selected, which makes it look as if the connection succeeded when it has not.
This is confusing because the user-visible state suggests the integration is installed/available, while the actual runtime state has no callable Readwise tools.
Steps to reproduce
- In Codex Desktop, attempt to connect the Readwise MCP/plugin.
- Follow the Readwise official MCP setup path for Codex App using the Readwise MCP server:
https://mcp2.readwise.io/mcp
Readwise's official setup page says Codex App should add this server and then click Authenticate.
- The flow opens
readwise.iofor OAuth authorization. - Click the Readwise
Authorizebutton. - Observe that clicking
Authorizehas no visible effect: the page does not proceed, no error is shown, and the OAuth flow does not complete. - Return to Codex and try to use or inspect the Readwise integration.
Expected behavior
If OAuth does not complete, Codex should show the Readwise connection as failed, incomplete, or authorization required.
Codex should not present the integration as successfully available unless the MCP connection is authenticated and Readwise tools are actually mounted into the active thread/tool registry.
A good readiness check would be: after OAuth, verify that the MCP server exposes tools and that those tools are mounted into new/active threads. If no tools are available, surface a clear reconnect/error state.
Actual behavior
The Readwise plugin/MCP can still appear available/connected from the Codex UI/conversation side, but the active session has no Readwise/Reader tools available.
In the current session, tool discovery for Readwise found no callable Readwise tools. Searches for Readwise/Reader capability only returned unrelated tools such as GitHub/OpenAI Docs tools, or zero Readwise tools.
So the user experience is:
- Readwise authorization did not complete.
- Codex does not expose any Readwise tools.
- The UI/reference surface can still make Readwise look installed/available.
- There is no clear failed/incomplete authorization state.
Why this is a Codex-side bug even if Readwise OAuth is also involved
The Readwise Authorize button being unresponsive may be a Readwise OAuth page issue or an embedded-browser/callback issue.
But independently of that, Codex should not show a successful/available state when the integration is not actually ready. The readiness state should be based on whether authorization completed and whether tools are mounted, not only whether the plugin/MCP entry exists.
Related existing issues
This appears related to the broader MCP/OAuth tool exposure issues already reported in:
- #18527
- #20009
The additional symptom here is specifically the misleading Readwise connection/availability state when OAuth has not completed and no Readwise tools are exposed.
Attachments / evidence available
I can provide a screenshot or screen recording of the Readwise authorization page where the Authorize button does nothing, if helpful.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗