Model Context Protocol (MCP)

Bluesky MCP Server

A Bluesky MCP server gives an AI agent tools for Bluesky, so a model can publish to your account instead of only drafting posts. Point Claude, Cursor, or any MCP client at Outstand's server and the agent can post text with images or video, reply, repost, quote, and read likes, replies, and reposts. Bluesky's open AT Protocol makes it one of the friendliest platforms for agent publishing: there is no app review, no developer app, and no access tier to negotiate.

Official Bluesky APIManaged Keys included$19/month, 3,000 posts included
server url
https://mcp.outstand.so/mcp
claude mcp add -t http \
  -H "Authorization: Bearer ost_your_key" \
  outstand https://mcp.outstand.so/mcp

Works with Claude Desktop, Claude Code, Cursor, Windsurf, ChatGPT, and any MCP client.

Live since March 2026 - 27 tools across 11 platforms, $19/month, 3,000 posts included
01 / Quick start

First post in minutes.

The server URL is https://mcp.outstand.so/mcp. Paste it into your client and connect Bluesky.

  1. 01Create an Outstand account.
  2. 02Create an app password in Bluesky under Settings, then App Passwords. This is Bluesky's own mechanism for third-party clients, and it is revocable at any time without touching your real password.
  3. 03Connect the account with connect_bluesky, passing your handle and that app password. Your agent can make this call itself.
  4. 04Add https://mcp.outstand.so/mcp to your MCP client and ask it to post.

Claude Code

bash
claude mcp add -t http \
  -H "Authorization: Bearer ost_your_key" \
  outstand https://mcp.outstand.so/mcp

Claude Desktop

json
// claude_desktop_config.json
{
  "mcpServers": {
    "outstand": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.outstand.so/mcp",
        "--header",
        "Authorization: Bearer ost_your_key"
      ]
    }
  }
}

Cursor

json
// .cursor/mcp.json
{
  "mcpServers": {
    "outstand": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.outstand.so/mcp",
        "--header",
        "Authorization: Bearer ost_your_key"
      ]
    }
  }
}

Any client with a custom connector (ChatGPT, Claude web, Cursor)

text
# Add a custom connector in your client's settings and paste
# this URL, then sign in once in the browser. No API key to copy.

https://mcp.outstand.so/mcp

Works with Claude Desktop, Claude Code, Cursor, Windsurf, ChatGPT, and any other MCP client. Full client setup guide.

02 / Tools

What your agent can do.

The tools that apply to Bluesky, out of 27 on the server.

  • connect_blueskyConnect a Bluesky account with a handle and app password. Bluesky uses this instead of OAuth.
  • create_postPublish or schedule a Bluesky post, with up to 4 images or one video.
  • repost_postRepost a published post, or quote it with your own commentary.
  • create_replyReply to a comment on a post published through Outstand.
  • get_repliesRead replies on a post published through Outstand.
  • get_post_analyticsFetch likes, replies, and reposts for a published post.
  • list_postsList posts, filterable by account, status, and date range.
  • get_postFetch a single post and its per-platform publish status.
  • delete_postDelete a post record in Outstand, cancelling it if it is still scheduled.
  • delete_remote_postDelete the published post on Bluesky itself.
  • upload_mediaStart a media upload and get a signed URL for an image or video.
  • confirm_media_uploadConfirm an upload once the bytes are transferred and get the public URL to attach.
  • list_social_accountsList connected social accounts, so the agent can find your Bluesky account.
  • get_account_usageRead current billing-period post usage.
03 / The landscape

Does Bluesky have an official MCP server?

No, Bluesky does not ship an MCP server. But Bluesky is the one platform here where that matters least, because the AT Protocol is genuinely open: there is no gatekeeping, no app review, and no paid API tier. Anyone can wire up atproto calls and post.

So the honest framing is different from Instagram or X. If all you want is an agent that posts to one Bluesky account, a small self-hosted server is a perfectly reasonable choice, and several open-source ones exist. You will be maintaining session handling, media blob uploads, and rich-text facets yourself, but none of it is forbidden territory.

What a hosted server buys you on Bluesky is not access, it is uniformity. Bluesky sits behind the same endpoint, the same tools, and the same scheduling and media pipeline as every other network you publish to, so an agent that can post to LinkedIn and X can post to Bluesky without new code. If Bluesky is the only network you care about, self-hosting is a fair call. If it is one of several, the unified surface is the whole argument.

04 / Comparison

Choosing a Bluesky MCP.

Three realistic ways to give an agent Bluesky access. This is the one platform where self-hosting is genuinely competitive.

ApproachSetup timeAuthReliabilityCompliance
Self-hosted open-source (atproto)An hour or two, and it is honestly not hardBluesky app password, handled by youGood. The protocol is open and stable, but you maintain itFully legitimate. The AT Protocol is open by design
Directory-listed community serverMinutes to hours, depending on the projectBluesky app passwordVaries by maintainerFine. Bluesky does not restrict third-party clients
Hosted API-based (Outstand)A few minutes: create an app password, connect, paste the URLBluesky app password, stored encrypted and revocable by youMaintained, with sessions and media uploads handledOfficial AT Protocol, unified with 10 other networks
05 / Auth

Authentication: app password, not OAuth

Bluesky is the one network Outstand connects with an app password rather than an OAuth redirect, because that is what Bluesky itself offers third-party clients today. Create an app password in Bluesky under Settings, then App Passwords, and pass it with your handle to the connect_bluesky tool. Your agent can make that call itself.

An app password is not your account password. It is a separate credential you can revoke at any time from Bluesky's settings without changing your real password or affecting any other client. Outstand stores it encrypted and uses it to hold a session against your PDS. No Bluesky developer app, no client ID, and no access tier is involved anywhere in this.

06 / Worth knowing

Bluesky specifics.

  • Media is optional: text-only posts are normal on Bluesky. Attach up to 4 images, or a single video.
  • Posts are single posts. Bluesky reply chains are not published as one chained call, so an agent that wants a thread should post and then reply.
  • Reposts and quote posts both work through repost_post. Pass a quote to add commentary, or leave it out for a plain repost.
  • Bluesky does not expose view counts, and it has no account-level time-series analytics, so post metrics cover likes, replies, and reposts and nothing is invented to fill the gaps.
07 / Scope

What this MCP doesn't do.

This is a publishing server, not a firehose client. It does not scrape or index the Bluesky network, build custom feeds or feed generators, run moderation and labeling services, or pull follower graphs, all of which are things the AT Protocol supports but that are a different product from publishing. Analytics cover posts you published through Outstand.

08 / FAQ

Frequently asked questions.

Does Bluesky have an official MCP server?

No, Bluesky does not publish one. It matters less here than elsewhere: the AT Protocol is open, so third-party clients are welcome by design and there is no API tier or app review to get through. Options range from small self-hosted servers to hosted ones like Outstand.

Can Claude post to Bluesky?

Yes. Add https://mcp.outstand.so/mcp to Claude, connect your Bluesky account with an app password, and Claude can post, reply, repost, and quote. The same connector works in Cursor, Windsurf, ChatGPT, and any other MCP client.

How does Bluesky authentication work here?

With an app password, not OAuth, because that is what Bluesky offers third-party clients. You create one under Settings, then App Passwords, and pass it with your handle to connect_bluesky. It is a separate revocable credential, not your account password, and Outstand stores it encrypted.

Does it support images and video?

Yes. A post can carry up to 4 images, or a single video. Text-only posts are fine too, since Bluesky does not require media the way Instagram does.

Can it schedule Bluesky posts?

Yes. create_post takes a scheduled time, so an agent can queue a Bluesky post up to 30 days ahead. Scheduling runs inside Outstand rather than on Bluesky, and a scheduled post can be cancelled with delete_post before it goes out.

Why use a hosted server when the AT Protocol is open?

If Bluesky is the only network you publish to, self-hosting is a reasonable choice and we would rather say so than pretend otherwise. The argument for a hosted server is uniformity: Bluesky sits behind the same endpoint, tools, scheduling, and media pipeline as the other ten networks, so an agent that can post to LinkedIn or X can post to Bluesky with no new code.

What does it cost?

The MCP server is included with every Outstand account at no extra cost. Pricing is $19/month, 3,000 posts included, and posts published by an agent draw on the same quota as posts published through the REST API.

Every claim on this page is restated, dated, and citable on the facts page.

Connect Bluesky, publish your first post in minutes

Create an app password, connect the account, paste the server URL into your client. Then just ask your agent to post.

https://mcp.outstand.so/mcp