For the complete documentation index, see llms.txt. This page is also available as Markdown.

Bluesky API and MCP

Build a Bluesky publish request using the selected account, text, and supported media.

Use bluesky as the platform value. No extra target identifier is required after selecting accountId.

Fields

Field
Use

additionalPosts

Optional thread posts, each with text and mediaUrls. For REST, place this in post.content.

For MCP, pass platform-specific fields alongside accountId, platform, text, and mediaUrls. For REST, platform-specific target fields belong inside post.target. Thread content belongs inside post.content.additionalPosts.

Media and formats

Publish text, up to 4 images, or one video. Blotato waits for Bluesky video processing during publication. Follow the video URL format requirements in the media reference.

Read Bluesky media requirements and upload and conversion rules. Public media URLs go directly in mediaUrls. No upload step required.

MCP example

Call blotato_create_post with the following shape. Replace lookup IDs and example media URLs with returned IDs and your media. Adjust the example's settings to the user's request.

{
  "accountId": "ACCOUNT_ID_FROM_LOOKUP",
  "platform": "bluesky",
  "text": "A post for Bluesky.",
  "mediaUrls": []
}

REST example

Send this JSON to POST https://backend.blotato.com/v2/posts with your blotato-api-key header.

Verify the result

  1. Save the returned postSubmissionId.

  2. If processing continues, use blotato_get_post_status or GET /v2/posts/:postSubmissionId.

  3. Report the returned status and public URL when supplied.

For scheduling, add scheduledTime or useNextFreeSlot as an MCP argument or a REST top-level sibling of post. See Scheduling and completion rules.

Limits and troubleshooting

A video submission is not finished until publishing completes. Keep the submission ID and use the status lookup if the MCP create call returns processing status.

See Bluesky account guide, platform help, and the Publish Post reference for options and examples.

Last updated