🤖 MCP
Install a client
Codex

Codex

Codex connects over HTTP with a bearer token, so no bridge and no Node.js setup is needed. The one thing that makes it different from Claude Code is where the token lives.

⚠️

Codex stores only the name of an environment variable — config.toml gets bearer_token_env_var, never the token itself. The variable has to exist in every shell that starts Codex. A bare export dies with the terminal, and the failure then looks like a rejected key rather than a missing variable.

Add the server

Open a terminal on the machine where Codex is installed. The app's snippet does three things at once — exports the token for this session, appends it to your shell profile so future terminals have it, and registers the server:

export AOV_UPSELL_MCP_TOKEN="aov_mcp_YOUR_KEY"
echo 'export AOV_UPSELL_MCP_TOKEN="aov_mcp_YOUR_KEY"' >> "${ZDOTDIR:-$HOME}/.zshrc"
 
codex mcp add aov-upsell-your-store \
  --url https://upsell.avada.io/mcp \
  --bearer-token-env-var AOV_UPSELL_MCP_TOKEN

Copy the block from Settings → MCP connectors rather than typing this — it arrives with your server name and token already filled in.

The profile line targets ~/.zshrc. On bash, add the same export line to ~/.bashrc instead. Creating a new key appends another line; the last export in the file wins.

If the server name already exists, remove the old entry first:

codex mcp remove aov-upsell-your-store

Check it worked

Restart the Codex CLI, or the Codex IDE extension. In a chat, type /mcp. You should see aov-upsell-your-store listed, with a tool count matching the access level you chose — 18 for read only, 25 with write, 27 with delete.

Then ask something only your store can answer:

What free gift campaigns am I running?

If the server is listed but the question comes back with a refusal, the address is right and the token is not — see Troubleshooting.

Related

Product
Install AppWebsiteAvada Apps
Resources
DocumentationFAQPrivacy Policy
Company
Avada GroupContact
© 2026 Avada Group. All rights reserved.