# Codex with your WhatsApp: one server address, one approval

> Circles lets Codex read the WhatsApp chats you choose, over MCP. Add Circles as an MCP server with one address, approve on Circles' page, and Codex can pull what a client or a community said straight into your work.

**To connect Codex to WhatsApp:** link your number in Circles, add an MCP server in Codex with the address `https://app.usecircles.app/api/mcp`, and approve on Circles' page when Codex asks. There is no key to copy, and Circles is free for 2 chats, or $29 a month on Pro (₪99 in Israel) with 14 days free, as of October 2026.

Source: https://usecircles.app/en/agents/codex · Updated 2026-10-27

## Three steps, one address

ChatGPT and Codex connect by address with OAuth; the app shows the current steps. Codex registers itself, you approve, and no key is made.

1. **Link your WhatsApp in Circles**: Start your trial, then link your number as a linked device: a code typed on your phone, or a QR on your computer. Same number, same WhatsApp on your phone. History arrives in about 5 to 15 minutes, and you can connect your agent meanwhile.
2. **Add an MCP server in Codex**: Name it `circles` and give it the address `https://app.usecircles.app/api/mcp`. The exact command or setting changes between Codex versions; the Circles app shows the current steps.
3. **Approve on Circles' page**: Run `codex mcp login circles` (or choose Authenticate in the Codex app or IDE), then approve on Circles' page. Sending starts ticked; untick it to connect a reader. Even with it, Codex sends only in chats you opened for sending.

## The config, if you edit it by hand

Codex keeps MCP servers in its config file. The entry is a name and the address, as of October 2026:

```
[mcp_servers.circles]
url = "https://app.usecircles.app/api/mcp"
```

Prefer a token, for example on a machine with no browser to approve in? Make one under *New token* on Circles' Agents page and give it to Codex as a bearer token; Codex can read it from an environment variable, and its own docs name the setting. Keep it out of anything you commit.

## What to ask Codex

For developers whose clients, testers and communities live on WhatsApp. Invented examples, real shapes.

- **"Read what Yossi posted in the client group today and open an issue with the steps to reproduce"**: Codex reads the group, voice notes as text, and writes the issue with the tools it already has for your tracker.
- **"Draft release notes for the community group from this week's merged changes"**: Codex reads the repo and the group's tone. It posts only if you opened that group for sending; otherwise you paste it yourself.
- **"What exactly did the client ask for about the login page in yesterday's voice notes?"**: The voice notes are already transcribed, Hebrew and English, so Codex can quote them back to you.
- **"Get the screenshot the tester sent and check it against the current settings page"**: Codex fetches the image from the chat and looks at it itself. Circles does not describe images.

## What Codex can and cannot do here

**Codex can:**

- See which chats you opened, and which of them moved since a time, with counts and no text (`allowed_chats`, `activity`).
- Catch up and search, in one chat or all of them, with senders by name and voice notes already transcribed (`catch_up`, `search`).
- See who you talk with and who is in a group, by the name you saved; group member lists never include numbers (`people`, `group_members`).
- List the documents sent in your chats and open a photo, PDF or file, up to 50 MB (`documents`, `get_media`). Codex opens the file and reads it itself.
- Send a message or a file, only in chats you opened for sending and within your daily cap (`send`).

**Codex cannot:**

- See a hidden chat. It is not listed, not searchable, and never named, not even in a refusal.
- Send in a chat you opened for reading only, go past the daily cap (default 5 across all your agents), or have a send retried automatically.
- Reply with a quote or react with an emoji. Those exist only in the [HTTP API](https://usecircles.app/en/whatsapp-api-personal-number).
- Keep access after you disconnect it. Disconnecting ends it at once, and every request it made stays in your activity log.

## Questions and answers

### Does Codex have a WhatsApp integration?

Not from OpenAI. Circles is a hosted WhatsApp MCP server Codex adds by address: it reads the WhatsApp chats you open, from your personal number.

### Do I need an API key for Codex?

No. Codex registers itself with Circles and you approve on Circles' page. A token is there if you want one, for example on a machine without a browser.

### Is it the same connection as ChatGPT?

The same address and the same approval flow. Circles recognizes clients from OpenAI and shows them in your agents list, each with its own Disconnect.

### Can Codex send WhatsApp messages?

Sending starts ticked on the approval page; untick it to connect a reader. Even with it, Codex sends only in chats you opened for sending, within your daily cap. A send is never retried automatically.

### Can Codex reply to a specific message or react?

Not over MCP. Quoted replies and emoji reactions are only in Circles' [HTTP API](https://usecircles.app/en/whatsapp-api-personal-number), which Codex can call with a key if you build that in.

## Keep reading

- [Claude Code](https://usecircles.app/en/agents/claude-code): One command and a token.
- [Cursor](https://usecircles.app/en/agents/cursor): One block in mcp.json.
- [The HTTP API](https://usecircles.app/en/whatsapp-api-personal-number): Replies, reactions and your own scripts.

---

14 days free. Link your number, pick the chats, then connect Instinct with one tap or Claude, ChatGPT and Codex with one address. Start: https://usecircles.app/start?agent=codex&lang=en
