Codex + PostlyBee
Schedule social media posts with Codex
Add PostlyBee to Codex once and use it from the Codex CLI, the IDE extension, and the ChatGPT desktop app. Codex turns what you ship into posts and schedules them to your social channels.
- One command, then an OAuth sign-in with codex mcp login
- Set up once in config.toml and use it across Codex clients
- Codex asks before write tools, so reads never interrupt you
$0 charged today, cancel anytime. MCP is included in every paid plan.
How do I connect Codex to PostlyBee?
Codex keeps MCP servers in config.toml, which the Codex CLI, the IDE extension, and the ChatGPT desktop app share. Add PostlyBee once and switch between them freely.
- 1
Connect your social channels
Start your 7-day free trial and connect the accounts Codex should post to, such as X, LinkedIn, or Dev.to.
- 2
Add PostlyBee to Codex
Run codex mcp add, then codex mcp login to sign in with OAuth, or point Codex at a scoped API token.
- 3
Ask Codex to post
Ask for a post about your latest change. Codex drafts it, shows you the copy, and schedules it after you approve.
MCP server URL
https://api.postlybee.com/mcpBest for your own machine. Codex stores the sign-in and uses it from the CLI, the IDE extension, and the ChatGPT desktop app.
- 1Add the server with the first command below.
- 2Run codex mcp login postlybee, sign in to PostlyBee, and approve a workspace.
- 3Start Codex and run /mcp to check that postlybee is connected.
codex mcp add postlybee --url https://api.postlybee.com/mcp
codex mcp login postlybeeConnection options
OAuth or an API token?
Both routes reach the same PostlyBee tools. Choose based on where Codex runs.
OAuth sign-in
Best for: the Codex CLI and IDE on your own machine
Run codex mcp login once. Nothing secret goes in config.toml, and the same sign-in works in every Codex client that shares the file.
Scoped API token
Best for: codex exec, CI, and remote machines
Codex reads the token from an environment variable, so it never lands in config.toml. Bind it to one workspace and give it only the scope the job needs.
Capabilities
What can Codex do with PostlyBee?
Codex works in your repository, so it can write posts from real changes and hand them to PostlyBee to schedule.
Write from your code
Codex reads diffs, docs, and changelogs and writes posts that describe what actually changed.
Post to developer channels
Publish Dev.to articles with tags and canonical URLs, or X and Bluesky threads, alongside LinkedIn.
Follow each platform’s rules
Codex loads each channel’s post rules and settings before it writes, so posts fit the platform.
Fill your schedule
Find the next open posting slots and spread a batch of posts across them.
Check the queue
List scheduled, published, and failed posts, and update settings on posts that have not gone out yet.
Read the results
Pull account and post analytics to see which announcements landed.
Approvals
Let reads run and approve every write
PostlyBee marks its read-only tools, such as listing channels, finding slots, and reading analytics. With default_tools_approval_mode set to writes, Codex runs those freely and asks you before anything that schedules, uploads, or changes a post.
You can narrow things further with enabled_tools, so Codex only sees the PostlyBee tools a project needs.
[mcp_servers.postlybee]
url = "https://api.postlybee.com/mcp"
default_tools_approval_mode = "writes"
enabled_tools = [
"integrationList",
"integrationSchema",
"postingSlotsTool",
"integrationSchedulePostTool",
]Codex or ChatGPT?
Is Codex the same as ChatGPT?
No. ChatGPT on the web connects to PostlyBee through a Developer mode app. Codex is OpenAI’s coding agent; it reads PostlyBee from config.toml, which the Codex CLI, the IDE extension, and the ChatGPT desktop app share.
Use the ChatGPT guide to plan posts in a web chat, and this guide when posts should come out of your code.
Automation
Draft release posts with codex exec
codex exec runs Codex without an interactive session, which fits a release job. Use the API token route, since a non-interactive run cannot open a browser to sign in.
For unattended runs, ask Codex to save drafts instead of scheduling, so someone reviews each post in PostlyBee first. Mark the server required = true to make the job fail if PostlyBee cannot connect.
codex exec "Read CHANGELOG.md and save a LinkedIn post and an X post \
about the latest release as PostlyBee drafts."Example prompts
What can you ask Codex to do in PostlyBee?
> Look at the changes on this branch and write a LinkedIn post announcing the feature. Schedule it for Thursday at 9 AM.
- ● git diff main --stat└ 12 files changed: new webhook retries
- ● postlybee · integrationList└ Found LinkedIn
- ● postlybee · integrationSchema└ Loaded LinkedIn post rules
● This branch adds automatic webhook retries. Here is a post that leads with the problem it solves.
LinkedInThu, 9:00 AM
Missed webhooks are now retried automatically, with backoff, for up to 24 hours. No more replaying events by hand after an outage.
? Schedule the LinkedIn post for Thursday at 9:00 AM? (y/n) y
● postlybee · integrationSchedulePostTool
✓ Post scheduled
> Turn docs/getting-started.md into a Dev.to article tagged javascript and tutorial, and save it as a draft.
- ● read docs/getting-started.md└ Read 210 lines
- ● postlybee · integrationList└ Found Dev.to
- ● postlybee · integrationSchema└ Loaded Dev.to settings: title, tags, canonical URL
● I kept the code samples and rewrote the intro for readers who have never used the library.
Dev.toDraft
Getting started with our SDK in 5 minutes Tags: javascript, tutorial
? Save the Dev.to article as a draft? (y/n) y
● postlybee · integrationSchedulePostTool
✓ Draft saved
> Write five short X tips from docs/tips.md and put them in my next open X slots.
- ● read docs/tips.md└ Read 48 lines
- ● postlybee · postingSlotsTool└ 5 open slots, Monday to Friday at 12:00 PM
- ● postlybee · integrationSchema└ Loaded X post rules
● Five tips, one per slot. Here is Monday’s:
XMon, 12:00 PM
Tip: pass --dry-run to see exactly what a deploy will change before it touches production.
? Schedule all 5 tips? (y/n) y
● postlybee · integrationSchedulePostTool
✓ 5 posts scheduled
> What did we post last week, how did it do, and did anything fail?
- ● postlybee · postsListTool└ Found 13 posts from last week
- ● postlybee · analyticsOverviewTool└ Loaded analytics for 3 channels
● Last week at a glance:
- - 12 posts published and 1 failed on X on Tuesday.
- - The Dev.to article on caching got the most reactions.
- - You can fix the failed X post and reschedule it from the PostlyBee calendar.
Which guide?
Codex, ChatGPT, or another coding agent?
Every guide uses the same PostlyBee MCP server. Pick the one for the tool you already use.
Codex(this page)
OpenAI’s coding agent in the terminal, IDE, and ChatGPT desktop app, configured through config.toml.
ChatGPT
OpenAI’s chat app on the web. Add PostlyBee as a Developer mode app and plan posts in a conversation.
Read the ChatGPT guideClaude Code
Anthropic’s coding agent. Add PostlyBee with claude mcp add and post from your terminal or CI.
Read the Claude Code guide
Pricing and security
How much does it cost?
MCP access is included in every paid PostlyBee plan, starting from $9.99 per month, with a 7-day free trial. Codex itself needs a ChatGPT plan or an OpenAI API key.
How is access secured?
OAuth sign-ins and API tokens are scoped to one workspace. Keep tokens in environment variables, not in config.toml, and revoke them any time.
Something not working?
Run /mcp in Codex to see the server status. If it needs a sign-in, run codex mcp login postlybee; if only read tools appear, reconnect with write access.
FAQ
Codex and PostlyBee FAQ
Get started
Let Codex announce what you ship
Start your free trial, connect your channels, and add PostlyBee to Codex with one command.