Updated October 25, 2026 · Live: TikTok, Instagram, Facebook Pages, YouTube, LinkedIn (personal profiles), Bluesky, Telegram, Mastodon, Discord, X (paid plans) · Not available yet: Threads, Reddit, Pinterest.
Most MCP servers read: they search, fetch or summarize. A post MCP server writes to the outside world, so what matters is which tools publish, when, and how the agent learns the result. These are PostWire's, as its live tools/list describes them on Oct 26, 2026:
| Tool | What it does | Key inputs |
|---|---|---|
post_to_social | Publishes now to every listed network; one text for all or a separate draft per network | platforms, text, per_platform, video_url, photo_url, media, idempotency_key |
schedule_post | Queues the same post for a future time, up to 365 days ahead, or for the brand's next free queue slot | run_at (ISO 8601 or "next_slot"), timezone, same content fields |
bulk_schedule | Schedules many posts at once from a CSV or a list of rows, checked first with dry_run | csv or rows, timezone, dry_run |
create_recurring_post | Repeats a post daily, weekly or monthly, rotating text variants so it does not repeat word for word | rule, variants, guard_days |
get_post_status | Reads back the live link and PostWire's own check of the post on the network (re-read 10 min, 1 h, 6 h, 24 h and 72 h after publishing) | platform, id |
Videos and photos the agent cannot attach go through create_upload_link: a single-use page, valid 24 hours, where you pick the file from any device (up to 1 GB).
PostWire is listed in Claude's connector directory. No API key to copy: you sign in with your email and a 6-digit code (it creates a free account if you don't have one).
Add to Claude Full guide for Claude · agent.md · ChatGPT
The Model Context Protocol (MCP) is an open standard for connecting AI agents to external tools and data. An MCP server advertises a set of tools — named functions with typed inputs — that a client like Claude Desktop, Claude Code, or Cursor can discover and call during a conversation. When you ask Claude to "post this to Bluesky," the model picks the right tool, fills in the arguments, and the MCP server does the real work.
Most "social media APIs" are REST endpoints you have to wire up yourself. PostWire is built MCP-first: the same posting engine is exposed as an MCP server and a REST API, so an agent can use it with zero custom integration code.
PostWire keeps the surface area small and predictable so agents reason about it reliably:
The one-line way: give your agent set up https://postwire.io/SKILL.md (read it raw, e.g. with curl). The skill adds the server for whichever client it runs in, signs you in, connects your first network and ends with your first post published, after you approve each network's draft.
A whole week: the social-week skill turns a short brief into a 7-day content calendar with a native draft per network, shows it for your approval and schedules it with bulk_schedule. Install it in every agent on your machine with npx skills add https://postwire.io --skill social-week.
By hand: every client below connects to the hosted server https://postwire.io/api/mcp (Streamable HTTP). Where a browser can open, you sign in to PostWire (OAuth 2.1; a 6-digit email code creates a free account if you have none) and no key is copied anywhere. Without a browser, use an API key from the dashboard (API & MCP) kept in the environment variable POSTWIRE_API_KEY. Each format was checked against the client's own documentation on October 4, 2026.
claude mcp add --transport http --scope user postwire https://postwire.io/api/mcp
# then, inside Claude Code: /mcp → postwire → Authenticate
No browser: add --header 'Authorization: Bearer ${POSTWIRE_API_KEY}' (single quotes keep the variable, not the key, in the config). Details · Claude Code docs
codex mcp add postwire --url https://postwire.io/api/mcp
codex mcp login postwire # only if the sign-in did not start by itself
No browser: codex mcp add postwire --url https://postwire.io/api/mcp --bearer-token-env-var POSTWIRE_API_KEY. Details · Codex docs
{
"mcpServers": {
"postwire": { "url": "https://postwire.io/api/mcp" }
}
}
If the sign-in does not complete, add "headers": { "Authorization": "Bearer ${env:POSTWIRE_API_KEY}" }. Details · Cursor docs
{
"servers": {
"postwire": { "type": "http", "url": "https://postwire.io/api/mcp" }
}
}
The root key is servers, not mcpServers: a config copied from another client is ignored without an error. Use it from Copilot Chat in agent mode. Details · VS Code docs
{
"mcpServers": {
"postwire": {
"serverUrl": "https://postwire.io/api/mcp",
"headers": { "Authorization": "Bearer ${env:POSTWIRE_API_KEY}" }
}
}
}
Windsurf is now Devin Desktop, whose docs put the file at ~/.config/devin/mcp_config.json (%APPDATA%\devin\mcp_config.json on Windows). Details · Devin Desktop docs
gemini mcp add -s user --transport http postwire https://postwire.io/api/mcp
# then, inside Gemini CLI:
/mcp auth postwire
-s user makes it global (the default is the project). Sign in rather than passing a key in a header: Gemini CLI blanks variables whose name contains KEY or TOKEN. Details · Gemini CLI docs
Add https://postwire.io/api/mcp as a remote MCP server: step-by-step for each gateway.
Then ask: "Write this for LinkedIn and Bluesky, show me both, and post them when I say yes." The agent calls generate_posts, shows each draft, and calls post_to_social only after you approve. All clients side by side: MCP config compared.
Under the hood, MCP tool calls are JSON-RPC. Here is what the client sends when the agent invokes post_to_social:
{
"jsonrpc": "2.0",
"id": 7,
"method": "tools/call",
"params": {
"name": "post_to_social",
"arguments": {
"platforms": ["bluesky", "mastodon", "discord"],
"text": "Shipping PostWire MCP today 🚀",
"photo_url": "https://cdn.example.com/launch.png"
}
}
}
If you're not using an agent, the same action is one HTTP call. Copy-paste (every endpoint, with Node and Python too, is in the API docs):
curl -X POST https://postwire.io/api/post \
-H "Authorization: Bearer YOUR_POSTWIRE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"platforms": ["bluesky", "telegram", "mastodon", "discord"],
"text": "Shipping PostWire MCP today 🚀",
"photo_url": "https://cdn.example.com/launch.png"
}'
Posting the same text to every network is what algorithms penalize. PostWire's Smart Distribute tool (generate_posts, also POST /api/generate) takes one prompt and optional media and returns the best native post for each platform — correct character limits and hashtag rules, an SEO title and tags for YouTube, hook-first captions for TikTok/Reels, professional framing with the link in the first comment for LinkedIn, CamelCase hashtags for Mastodon. Your agent can generate, review, then publish — and generation is included in the plan price.
| Platform | Status | Postable via MCP |
|---|---|---|
| Bluesky | Live now | Yes |
| Telegram | Live now | Yes |
| Mastodon | Live now | Yes |
| Discord | Live now | Yes |
| TikTok | Live now | Yes |
| Live now | Yes | |
| Facebook Pages | Live now | Yes |
| YouTube | Live now | Yes |
| LinkedIn (personal profiles) | Live now | Yes |
| X | Live on paid plans (X credits) | Yes |
| Not available yet | No |
Step by step, per network: TikTok MCP server · Instagram MCP server · YouTube MCP server · LinkedIn MCP server · Facebook Pages MCP server · Bluesky MCP server · Mastodon MCP server · Telegram MCP server · Discord MCP server · X MCP server.
Ayrshare's MCP server can post, but it authenticates with a static Bearer key (no OAuth connector for claude.ai), X needs your own developer app, and plans start at $149/month. PostWire's MCP server takes an API key or an OAuth 2.1 sign-in (so it can be added to Claude as a custom connector); where it differs is that generate_posts writes a native post per network from one prompt, with writing included in the plan. On price, ten client businesses sit on PostWire's $29 Pro plan against $299 for Ayrshare's comparable Launch plan.
| PostWire | Ayrshare | |
|---|---|---|
| MCP server that can post | Yes (API key or OAuth sign-in) | Yes (static Bearer key; no OAuth) |
| ten businesses | $29/mo (Pro) | $299/mo (Launch) |
| Native post per network from one prompt | Yes (generate_posts, included) | No (AI generate/rewrite needs the Max Pack, +$300) |
| Free tier | $0 · 1 brand · 10 posts · 2 networks per post | No free plan (trial) |
See the full breakdown on PostWire vs Ayrshare.
| Plan | Price | Brands |
|---|---|---|
| Free | $0 | 1 brand · 10 posts/mo · 2 networks per post |
| Starter | $9 | Per-brand |
| Pro | $29 | Per-brand |
| Agency | $99 | fifty businesses |
| Scale | $299 | High-volume |
https://postwire.io/api/mcp) has 26 tools on its live tools/list (Oct 26, 2026): post_to_social publishes now, schedule_post queues for later, bulk_schedule takes a CSV, create_recurring_post repeats a post and get_post_status reads the result back, across TikTok, Instagram, Facebook Pages, YouTube, LinkedIn (personal profiles), Bluesky, Telegram, Mastodon, Discord and X (paid plans).generate_posts, post_to_social, get_post_status, list_platforms and my_account — so Claude can actually publish posts to TikTok, Instagram, Facebook Pages, YouTube, LinkedIn (personal profiles), Bluesky, Telegram, Mastodon, Discord and X (paid plans) without you writing any glue code.claude mcp add --transport http --scope user postwire https://postwire.io/api/mcp and authenticate from /mcp. Claude then writes a draft per network with generate_posts and publishes with post_to_social after you approve.create_post tool publishes to several networks), but it authenticates with a static Bearer key (no OAuth connector for claude.ai), X needs your own developer app, and plans start at $149/month.generate_posts and post_to_social tools so your agent can draft and publish without paying anything first.generate_posts to draft native posts and post_to_social to publish them across platforms.https://postwire.io/api/mcp) exposes 26 tools, including generate_posts, post_to_social, schedule_post, plan_week, create_upload_link and create_connect_link. The local npm package (npx postwire-mcp) exposes 5: generate_posts, post_to_social, get_post_status, list_platforms and my_account.Using a specific client? The config differs per client and a copied one fails silently — Claude Desktop, Claude Code, Codex, Cursor, VS Code, Windsurf and Gemini CLI compared.
Also listed on Smithery, Glama, PulseMCP and the official MCP registry — or install straight from npm / GitHub.