← All docs

Platform Account Connections

Platform Account Connections link a PostMCP workspace to social or chat publishing targets. Supported platforms include Bluesky, Mastodon, YouTube, Slack, Discord, and Telegram.

Connect Bluesky With An App Password

Bluesky can be connected with an app password. Keep the app password in your shell secret store or CI secret manager; PostMCP encrypts it at rest and does not return it in API or CLI responses.

export POSTMCP_BLUESKY_IDENTIFIER=postmcp.example.com
export POSTMCP_BLUESKY_APP_PASSWORD=bsky-app-password
postmcp accounts connect --platform bluesky --json

You can also pass --identifier and --app-password directly in a local shell when no command history is recorded.

Start An OAuth Connection

Use the CLI to start OAuth or platform-specific account authorization:

postmcp accounts connect \
  --platform youtube \
  --redirect-uri https://api.postmcp.dev/accounts/oauth/callback \
  --json

The response includes the provider authorization URL or the next platform step. Open that URL, complete the provider flow, and return to the callback URL.

List And Check Status

postmcp accounts list --json
postmcp accounts status --account acct_123 --json

Agents should call account status before publishing if a user reports failed publishes or if the account has not been used recently.

OAuth And Tokens

OAuth state is single-use and workspace-scoped. Platform tokens are encrypted at rest, never printed in logs, and never returned in API responses. Bluesky app passwords use the same encrypted connected-account token storage. YouTube, Discord, Slack, and Mastodon OAuth refresh runs automatically when the provider client ID and secret are configured. If a refresh fails the account status changes to needs_reauth; reconnect before retrying publish jobs.

Platform Notes

Bluesky and Mastodon use direct account credentials or OAuth-like app authorization depending on provider setup. YouTube uses Google OAuth and stores the connected channel identity for publishing. Slack and Discord use workspace app or bot installation. Telegram uses bot credentials and chat or channel access.

Each platform has different media, text, rate-limit, and permission behavior. Run postmcp accounts status and validate posts before scheduling or publishing to newly connected accounts.

Reconnect Flow

Reconnect an account when status shows expired, revoked, missing permission, or provider verification failure. After reconnecting, retry failed posts with postmcp post retry --post-group-id pg_... --json when the original content is still valid.