TimeToPost from Codex
Codex configures MCP in a TOML file, and for a hosted server that is a single table with a URL. You choose how much it can do: the full server, or a planning endpoint that only reads. Posts target Instagram, X, TikTok, Threads, Bluesky, Mastodon, Nostr, Pixelfed, Telegram, Tumblr, WordPress, Ghost, DEV, Whop, Listmonk, and Buttondown.
Full access
[mcp_servers.timetopost]
url = "https://api.timetopost.co/mcp"codex mcp login timetopost
codex mcp listThe login opens a browser: email, 6-digit code, Approve access. No bearer token variable is needed because the server uses OAuth.
Read-only planning access
Want Codex to analyse timing and review the queue but never touch it? Declare the planning endpoint instead. It is the same endpoint the TimeToPost planning plugin for Codex points at.
[mcp_servers.timetopost_planning]
url = "https://api.timetopost.co/mcp/planning"| Needs | Use |
|---|---|
| Plan a week from real engagement data | planning |
| File drafts | full |
| Approve or reject from the terminal | full |
How a reviewed post moves
On the full server the path is create_drafts, then list_approvals, then approve_draft or reject_draft. The first step files drafts as pending and cannot publish. The last one is classed as a publish-level action by the backend, so a token limited to read or draft access gets a 403 there however the agent words its request.
Direct scheduling with schedule_post and a time is possible on the full server and skips the queue. Mention create_drafts in your prompt, or stay on the planning endpoint, when you want a person in the loop.
Questions people ask
Can I use codex mcp add instead of editing the file?
Yes. Codex documents codex mcp add timetopost --url https://api.timetopost.co/mcp for Streamable HTTP servers, which writes the same table. The config.toml route is shown here so you can see exactly what is stored.
What does the planning endpoint include?
Nine read tools: whoami, list_integrations, list_posts, get_post, get_engagement_summary, get_optimal_times, list_drafts, list_approvals and best_time_teaser. Nothing that creates, schedules, approves or publishes.
Can I have both configured?
Yes. They are separate URLs with separate table names, so both appear in codex mcp list. Use different names, as in the examples, so the tools are not mixed up.
Where does the config file live?
~/.codex/config.toml by default, or .codex/config.toml in a trusted project.
Can Codex approve its own drafts?
On the full endpoint it can call approve_draft if you let it. The tool description tells agents to do so only after a human has reviewed the draft. If you want that guarantee enforced, use the planning endpoint, which has no approve tool.