All integrations

Connect CLS++ Memory to OpenAI Codex

Give Codex persistent memory across sessions with the CLS++ Memory MCP server. Tools exposed: recall_memories, store_memory, who_am_i.

Quick install (remote, OAuth — preferred)

Add the server to ~/.codex/config.toml:

[mcp_servers.cls-memory]
url = "https://www.clsplusplus.com/mcp"

Then log in (opens your browser for OAuth 2.1 + PKCE):

codex mcp login cls-memory

Codex stores MCP config in ~/.codex/config.toml (global). For a single project, use a trusted-project .codex/config.toml with the same block.

OAuth login

The CLS++ endpoint uses OAuth 2.1 + PKCE with Dynamic Client Registration. codex mcp login cls-memory opens a browser tab — sign in once and Codex caches the token. No client ID/secret to paste.

If your Codex build has trouble with remote OAuth, enable the Rust MCP client:

[mcp_servers.cls-memory]
url = "https://www.clsplusplus.com/mcp"
experimental_use_rmcp_client = true

Fallback: stdio via the clsplusplus package (API key)

For builds without remote OAuth support, use the stdio transport with an API key (get one at https://www.clsplusplus.com):

[mcp_servers.cls-memory]
command = "uvx"
args = ["clsplusplus"]
env = { CLS_API_KEY = "your-api-key", CLS_API_URL = "https://www.clsplusplus.com" }

Or via CLI:

codex mcp add cls-memory --env CLS_API_KEY=your-api-key \
  --env CLS_API_URL=https://www.clsplusplus.com -- uvx clsplusplus

Verify it works

In a Codex session, run /mcp — you should see cls-memory connected with its three tools. Then ask: "Use cls-memory to store that my favorite language is Rust, then recall what my favorite language is." Codex should call store_memory and then return "Rust" from recall_memories.


See examples/integrations/codex-config.toml for the copy-paste config.