Codex + PostOnce

Take your next release from Codex to social

Ask Codex to publish your release update to connected social accounts, then inspect each destination’s result through PostOnce.

Connect Codex

Requires a PostOnce account, API access, and your own API key.

See setup steps

Set up your connection

Connect Codex to PostOnce

Use your own PostOnce API key.

Alternative: install the PostOnce plugin

The plugin includes the MCP connection and PostOnce workflow skill. Choose this instead of the manual connection and separate skill below. If you already connected PostOnce, keep only one connection to avoid duplicate tools. Preserve any custom skill instructions.

For the Codex CLI (commands checked with 0.150.1). This is a PostOnce-hosted package. Installation does not authenticate your account or grant access.

  1. Prepare your API key using step 1 below, with accounts:read for the first check. Supply POSTONCE_API_KEY through the CLI’s private process environment or secret manager before starting it. Keep the value out of chat, project files and shell history. A desktop launcher may not inherit your terminal environment.
  2. Inspect registered marketplaces before adding one:
    Terminal · check existing marketplaces
    codex plugin marketplace list

    Continue only if postonce is absent or already points to this extracted PostOnce package. Preserve an unrelated same-name registration; resolve the collision before adding this marketplace.

  3. Download the ZIP below, extract it into a dedicated directory, and replace the example with its absolute path. Keep the extracted directory for updates; do not extract over a client configuration directory.
    Terminal · install PostOnce plugin
    codex plugin marketplace add /absolute/path/to/extracted-postonce-package
    codex plugin add postonce@postonce
  4. Restart the CLI with its private environment. Confirm the PostOnce tools appear, and try this read-only request:
    Try this prompt

    Show my connected PostOnce accounts.

    An empty account list means authentication worked but no usable social accounts were found. Connect an account in PostOnce to continue.

To disconnect, remove the PostOnce plugin through your client and revoke its dedicated API key in PostOnce Preferences. Keep unrelated connections and keys. For a single-session plugin, end that session.

Recommended: manual MCP setup

  1. 1

    Prepare your PostOnce account

    You need API access on your plan and at least one connected social account. Create a dedicated key with accounts:read for your first check; add posts, media, or workflow scopes only for the actions you want.

  2. 2

    Register the remote server with Codex

    Set POSTONCE_API_KEY privately in the environment that launches Codex. Run this command in your terminal; it stores the environment variable name, not your key.

    Terminal · Codex CLI
    codex mcp add postonce --url https://postonce.to/mcp --bearer-token-env-var POSTONCE_API_KEY

    Follow the client-specific instructions above. Keep your API key out of agent conversations and public files.

  3. 3

    Check the connection

    Restart Codex from that environment. Run codex mcp list to check the configuration, then ask Codex to show your connected social accounts. Desktop launches must also have access to the environment variable.

    Try this prompt

    Show my connected social accounts.

    Expect account names, platforms, and IDs from list_active_accounts. Choose actual accounts before asking the agent to publish.

Read the connection documentation

From connection to first result

Start with one useful action

Find your accounts

Try this prompt

Show my connected social accounts.

Use the returned names and IDs to choose your targets. If nothing appears, connect an account in the dashboard.

Publish an update

Try this prompt

Help me publish a product update. First show my connected accounts, then ask me to choose the destinations and confirm the exact text before publishing.

After creation, ask for the post ID and each destination’s delivery status. A queued post is still waiting to publish.

Set up crossposting

Try this prompt

Show my connected accounts and the available crossposting options. Help me choose a supported source and destinations, then confirm the workflow before creating it.

A created workflow applies to future matching source posts. Inspect the workflow in PostOnce before relying on it.

Know what your agent can access

Connected accounts and scoped actions

PostOnce uses your API key’s scopes and existing account permissions. Your available destinations come from your connected accounts; media and text requirements still vary by platform.

Media needs a supported upload path

The hosted server cannot read a file path on your computer or assume access to a chat attachment. For a first media post, use a supported publicly accessible media URL and have the agent validate the selected platform’s requirements before publishing.

Media post example

Help me publish an image from a public media URL. Ask me for the URL, text, and connected destination accounts; check the platform requirements and confirm the post before creating it.

Questions before connecting

Do I need a particular PostOnce plan?

You need a plan with Public API access. Your API keys tab checks your account’s actual entitlement and shows an upgrade option when required. Connecting a client does not change your plan.

What if my agent shows no social accounts?

Connect or reconnect a social account in PostOnce, then ask the agent to list active accounts again. The API key must belong to the same PostOnce account and include accounts:read.

How do I check a failed or queued post?

Ask the agent to get the post using its returned ID and inspect each target’s status and error. Review the post in the dashboard. Check the existing result before creating another post to avoid duplicates.

How do I disconnect or replace the key?

Revoke the dedicated API key in Preferences → API keys and remove the server from your client. To reconnect, create a new key with the scopes you need and replace the old key in the client’s private configuration.

Explore more ways to connect

Your next post starts here.

Connect Codex

Requires a PostOnce account, API access, and your own API key.