Codex Desktop: official app connectors fail to initialize with JsonRpcMessage deserialize error

Open 💬 2 comments Opened May 20, 2026 by HarpElle

Summary

Official codex_apps connectors fail before tool execution in Codex Desktop. The failure is persistent across app restart and after removing/re-adding the connectors.

This is not limited to one connector or one action: read-only Gmail, Google Drive, and GitHub connector calls all fail with the same MCP startup / JSON-RPC deserialize error. Browser access to Gmail still works for the same Google account, so this does not look like a basic Google login/session issue.

Environment

  • App: Codex Desktop
  • App version: 26.513.31313
  • Bundle version: 2867
  • Bundle id: com.openai.codex
  • OS: macOS 26.4.1 build 25E253
  • Architecture: arm64
  • Project trust level: trusted local project
  • Affected installed plugins/apps observed: gmail@openai-curated, google-drive@openai-curated, github@openai-curated

Repro steps

  1. In Codex Desktop, enable/connect Gmail and Google Drive connectors.
  2. Restart Codex.
  3. From a trusted local project/thread, call a read-only Gmail action such as _list_labels.
  4. Call a read-only Google Drive action such as _list_drives.
  5. Remove/re-add the connectors and restart Codex, then repeat the same read-only calls.
  6. Try an official GitHub connector call such as creating an issue; it fails with the same connector startup error.

Expected behavior

The official connector client initializes and returns Gmail labels / Drive metadata / GitHub API results, or returns a clear auth/permission error if the connection is invalid.

Actual behavior

Official connector calls fail before reaching the backing service with this error:

tool call error: failed to get client

Caused by:
    MCP startup failed: Transport send error: Transport [rmcp::transport::worker::WorkerTransport<rmcp::transport::streamable_http_client::StreamableHttpClientWorker<codex_rmcp_client::http_client_adapter::StreamableHttpClientAdapter>>] error: Deserialize error: data did not match any variant of untagged enum JsonRpcMessage

The local Codex log also shows connector refresh failures around reinstall/reconnect attempts:

WARN codex_core::connectors ... failed to force-refresh tools for MCP server 'codex_apps', using cached/startup tools: failed to get client: MCP startup failed: Transport send error: Transport [rmcp::transport::worker::WorkerTransport<rmcp::transport::streamable_http_client::StreamableHttpClientWorker<codex_rmcp_client::http_client_adapter::StreamableHttpClientAdapter>>] error: Deserialize error: data did not match any variant of untagged enum JsonRpcMessage

Impact

Scheduled automations that rely on Gmail/Drive cannot reliably read, label, update trackers, or send messages. In this case, an 8 PM automation prepared an update but could not complete delivery through Gmail; the user had to authorize a manual Chrome/Gmail fallback. Google Sheet tracker reads also failed.

The GitHub connector also failed when attempting to file this report from inside Codex, so this issue was created via the authenticated local gh CLI instead.

Privacy note

I am not attaching raw logs because they contain private project prompts/mail context. Happy to provide a more targeted sanitized excerpt if there is a specific log pattern or file that would help.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗