# publish_to_platforms

> Page: https://docs.flung.dev/mcp/workflows/publish-to-platforms. Index of every page: https://docs.flung.dev/llms.txt

Post to platforms by name. Posts one text, with images or video from URLs, to every active account on the platforms named: finds the accounts, checks each platform's text limit and media rule, imports the media, and schedules one post, now, at publishAt, or at the first platform's best time (bestTime). Platforms it cannot post to are listed in skipped with the reason. Calling it again with the same arguments does not post twice.

## TL;DR

| Question | Answer |
|---|---|
| What does it do? | Posts one text, with images or video from URLs, to every active account on the platforms named: finds the accounts, checks each platform's text limit and media rule, imports the media, and schedules one post, now, at publishAt, or at the first platform's best time (bestTime). Platforms it cannot post to are listed in skipped with the reason. Calling it again with the same arguments does not post twice. |
| Does it change anything? | Changes something. |
| Which tools does it call? | [`list_accounts`](https://docs.flung.dev/mcp/tools/list-accounts.md), [`list_platforms`](https://docs.flung.dev/mcp/tools/list-platforms.md), [`import_media`](https://docs.flung.dev/mcp/tools/import-media.md), [`suggest_posting_times`](https://docs.flung.dev/mcp/tools/suggest-posting-times.md), [`schedule_post`](https://docs.flung.dev/mcp/tools/schedule-post.md) |
| What if a step is refused? | The workflow stops there and answers with that step's refusal, named, with its reason and next step. |
| Which server? | `https://mcp.flung.dev/mcp-oauth` (sign in) or `https://mcp.flung.dev/mcp` (API key). |

## Steps

| Step | Tool | What it does |
|---|---|---|
| 1 | [`list_accounts`](https://docs.flung.dev/mcp/tools/list-accounts.md) | List connected accounts |
| 2 | [`list_platforms`](https://docs.flung.dev/mcp/tools/list-platforms.md) | List platforms and their limits |
| 3 | [`import_media`](https://docs.flung.dev/mcp/tools/import-media.md) | Add an image or video from a URL |
| 4 | [`suggest_posting_times`](https://docs.flung.dev/mcp/tools/suggest-posting-times.md) | Suggest when to post |
| 5 | [`schedule_post`](https://docs.flung.dev/mcp/tools/schedule-post.md) | Schedule a post |

## Arguments

| Argument | Type | Required | Description |
|---|---|---|---|
| `content` | `string` | yes | The text. at least 1 character; at most 10000 characters. |
| `platforms` | `("x" \| "instagram" \| "facebook" \| "threads" \| "linkedin" \| "tiktok" \| "youtube" \| "pinterest" \| "bluesky" \| "mastodon" \| "discord" \| "farcaster")[]` | yes | Where to post: every active account on each. |
| `mediaUrls` | `string[]` | no | Public https images or a video, in order. |
| `publishAt` | `string` | no | ISO 8601 with offset; omit for now. pattern `^(?:(?:\d\d[2468][048]\|\d\d[13579][26]\|\d\d0[48]\|[02468][048]00\|[13579][26]00)-02-29\|\d{4}-(?:(?:0[13578]\|1[02])-(?:0[1-9]\|[12]\d\|3[01])\|(?:0[469]\|11)-(?:0[1-9]\|[12]\d\|30)\|(?:02)-(?:0[1-9]\|1\d\|2[0-8])))T(?:(?:[01]\d\|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z\|([+-](?:[01]\d\|2[0-3]):[0-5]\d)))$`. |
| `bestTime` | `boolean` | no | Post at the next best time for the first platform's audience, instead of publishAt. |
| `timeZone` | `string` | no | The audience's IANA time zone for bestTime, such as Europe/London. at most 64 characters. |

## Example call

```json
{
  "name": "publish_to_platforms",
  "arguments": {
    "content": "We are live. #launch",
    "platforms": [
      "linkedin",
      "x",
      "bluesky"
    ],
    "mediaUrls": [
      "https://example.com/launch.jpg"
    ],
    "bestTime": true,
    "timeZone": "Australia/Brisbane"
  }
}
```

## Things a person might say

- "Post "We are live" with this image to LinkedIn, X and Bluesky at the best time."
- "Share our launch everywhere we are connected, now."

## Annotations

| Hint | Value |
|---|---|
| `readOnlyHint` | false |
| `destructiveHint` | false |
| `idempotentHint` | false |
| `openWorldHint` | true |

## See also

| Doc | Why |
|---|---|
| [MCP tools](https://docs.flung.dev/mcp/tools.md) | Every workflow and tool |
| [Connect an AI agent](https://docs.flung.dev/mcp.md) | Install the server in your client |
