Codex phone call MCP: give Codex a phone number for calls and texts
Add Bland's hosted MCP server to Codex and it can place calls and send texts for you.
Then $29.99/month. US and Canada. Fair use applies.
Unlimited talk
Unlimited text
One dedicated number
One concurrent call
What is the Codex phone call MCP setup?
The short answer
The Codex phone call MCP setup connects Codex to Bland's hosted MCP server at https://api.bland.ai/v1/mcp so Codex can place calls and send texts. You add 1 entry to ~/.codex/config.toml and Codex reads your Bland API key from the BLAND_API_KEY environment variable.
With the Agent Phone Plan, those calls and texts come from your own dedicated US number.
API key only, for now
Bland sign-in isn't available for Codex yet. Sign in with Bland will apply once dynamic client registration is available. Until then, Codex uses an API key.
Get the key from your Bland dashboard settings.
Who it's for
Built for 1 AI doing 1 everyday task at a time.
Need several calls at once or high call volume? Bland's Build or Scale plans cover that instead.
How it works in 3 steps
1. Subscribe to the Agent Phone Plan
Open Billing & Plans in your Bland dashboard and choose the Agent Phone Plan. A dedicated US local number is added to your account automatically.
2. Add Bland to Codex
Add the Bland entry to ~/.codex/config.toml and set BLAND_API_KEY to your key. Restart Codex so it loads the server.
3. Run a safe test call to your own phone
Ask Codex to call your own cell number, say it's a test, then end the call. Approve the call when Codex asks, and check that it reports back how the call went.
What Codex can do with a phone
Quick calls between tasks
Check a store's opening hours for tomorrow.
Ask a restaurant about a table for 2 tonight and report back what they said.
Small errands
Request a new time for an appointment and tell you which options they offered.
Confirm a delivery window and text you the answer.
Texts and incoming calls on the plan
Send texts from your number and reply to incoming texts toward the goal you set.
Receive calls on your number. If a call is already live, a new incoming call hears a busy message.
What you need before you connect Codex
A Bland account and API key
Create a Bland account and copy your API key from the dashboard settings page.
Keep it in an environment variable. Never paste it into a repo or commit config.toml with a key in it.
Codex
The Codex CLI, IDE extension, or desktop app.
Access to ~/.codex/config.toml and to the environment that launches Codex.
The Agent Phone Plan for a number and texting
The plan adds a dedicated number, texting, and incoming calls.
Without it, trying it for free covers outbound calls only.
Connect Codex: config.toml and your API key
Add the server entry
Add this to ~/.codex/config.toml: [mcp_servers.bland] with url = "https://api.bland.ai/v1/mcp" and bearer_token_env_var = "BLAND_API_KEY".
Codex reads your key from that environment variable, so the key never sits in the config file.
Codex CLI
In the same terminal, run export BLAND_API_KEY="org_..." with your key, then start codex.
Restart Codex after any config change.
Desktop app and IDE extension
The app's process must receive BLAND_API_KEY too, then restart Codex.
Editing a shell profile alone may not reach an app launched from your desktop. Bland's docs point to the Norm plugin's environment-based credential setup for this case.
If HTTP servers give you trouble
If your Codex version has trouble with HTTP servers, use the mcp-remote stdio bridge from Bland's Any client docs page.
The bridge needs Node.js 22+ and connects to the same URL with the same Authorization header.
Calls have real-world effects. Keep Codex's approval prompts on for the Bland server instead of auto-approving.
Bland marks call-placing tools as destructive and requires an explicit confirmation before they run.
Safe test call to your own phone
Ask Codex: call my cell number, say this is a test from my assistant, then end the call.
Approve it, answer, and check that Codex reports back how the call ended.
Try this next
Ask Codex to call a hotel, ask about late checkout on Sunday, and text you the answer.
Or have it get prices from 2 local service businesses and report back.
Supported apps and how they connect
ChatGPT, Claude Code, and Claude Desktop
ChatGPT: add Bland's MCP URL (https://api.bland.ai/v1/mcp) as a connector, then sign in with Bland when ChatGPT opens it.
Claude Code and Claude Desktop: connect the Bland MCP server with a Bland API key (Authorization: Bearer header) or sign in with Bland.
Codex, Cursor, VS Code, Windsurf, and Gemini CLI
Codex: add Bland's MCP server to ~/.codex/config.toml and read the key from the BLAND_API_KEY environment variable. Bland sign-in isn't available for Codex yet. Sign in with Bland will apply once dynamic client registration is available. Until then, Codex uses an API key.
Cursor, VS Code, Windsurf, and Gemini CLI: add the Bland MCP server URL and an API key header in each tool's own MCP config.
Grok Bot and Meta Muse
Grok Bot: wallet-assisted setup, or the manual MCP route with your API key.
Meta Muse: connects through Bland's REST API with a secure credential flow, not MCP.
Your own agent
Custom agents connect through Bland's REST API or the hosted MCP server, using an API key from your Bland dashboard settings.
Bland isn't affiliated with OpenAI; it connects through Codex's supported MCP settings.
What Codex can do once connected
One config.toml entry
Add Bland's hosted MCP server at https://api.bland.ai/v1/mcp to ~/.codex/config.toml. Codex reads your API key from BLAND_API_KEY. Phone call MCP server.
API key until sign-in exists
Bland sign-in isn't available for Codex yet. Sign in with Bland will apply once dynamic client registration is available. Until then, Codex uses an API key. See the other client configs.
Calls and texts between tasks
Codex can place a call or send a text, then come back with the result. The plan is built for 1 task at a time. AI phone call assistant.
Agent Phone Plan pricing and fair-use limits
$14.99 for the first month (50% off), then $29.99/month. The first-month price applies once per account owner. No trial. Your card is charged when you approve, and you can cancel from the billing page. 1 dedicated US local number, with unlimited calling and texting to US and Canada numbers, subject to fair use: 1 call at a time (counted across your account, inbound and outbound), 20 calls an hour, 50 calls a day, 1,000 call minutes a day, 60 minutes max per outbound call, 20 texts an hour, and 100 texts a day. Calls and texts to numbers outside the US and Canada are blocked on this plan. Cancel in Billing and Plans. Cancellation takes effect immediately. See AI phone number cost.
Then $29.99/month. First month price applies once per account owner.
Unlimited US + Canada voice minutes
Unlimited US + Canada SMS
One included US local number
One active call, inbound or outbound
Unlimited means fair use: one call at a time, 20 calls/hour, 50/day, 1,000 call minutes/day, 60 minutes max per outbound call, 20 texts/hour, 100/day, US and Canada only. See plan limits. Charged when you approve. There is no trial. Cancel in Billing and Plans. Cancellation takes effect immediately.
Questions
What's the difference between the Agent Phone Plan and trying it for free?
The Agent Phone Plan ($14.99 for the first month, then $29.99/month) gives your AI a dedicated US local number to make and receive calls and send and receive texts, with unlimited US and Canada calling and texting, subject to fair use: 1 call at a time (counted across your account, inbound and outbound), 20 calls an hour, 50 calls a day, 1,000 call minutes a day, 60 minutes max per outbound call, 20 texts an hour, and 100 texts a day. You can try it for free. That try covers outbound calls only, from a shared Bland number: no dedicated number, no texting, no incoming calls.
Can I sign in with Bland instead of using an API key in Codex?
Not yet. Bland sign-in isn't available for Codex yet. Sign in with Bland will apply once dynamic client registration is available. Until then, Codex uses an API key read from the BLAND_API_KEY environment variable.
Does the setup work in the Codex CLI, IDE extension, and desktop app?
The config.toml entry is the same. For the CLI, export BLAND_API_KEY in the terminal before you run codex. For the desktop app or IDE extension, the app's process must receive the variable too.
What if my Codex version has trouble with HTTP servers?
Bland's docs point to the mcp-remote stdio bridge on the Any client page as a fallback. It needs Node.js 22+.
What does it cost after the first month?
$29.99/month. The $14.99 first-month price applies once per account owner. There's no trial, and your card is charged when you approve.
What happens if 2 calls come in at once?
The plan allows 1 call at a time across your account, inbound and outbound. If a call is already live, a new incoming call hears a busy message, and a new outbound call is rejected until the first one ends.
Is Bland affiliated with OpenAI?
No. Bland isn't affiliated with OpenAI; it connects through Codex's supported MCP settings.
Bland's own price: first month, renewal, and what the plan includes.
Let Codex call and text
Works with
ClaudeCodexMuseGrok Bot
ChatGPT, Claude, Codex, Muse, and Grok Bot are trademarks of their respective owners. Bland isn't affiliated with, partnered with, or endorsed by Anthropic, OpenAI, Meta, or xAI.