check_auth_status | Check if the current session is authenticated. Authentication happens automatically using environment variables:
- BLUESKY_IDENTIFIER: Required - your Bluesky handle
- BLUESKY_APP_PASSWORD: Required - your app password
- BLUESKY_SERVICE_URL: Optional - defaults to https://bsky.social
Returns:
Authentication status |
get_profile | Get a user profile. Args:
ctx: MCP context
handle: Optional handle to get profile for. If None, gets the authenticated user
Returns:
Profile data |
get_follows | Get users followed by an account. Args:
ctx: MCP context
handle: Optional handle to get follows for. If None, gets the authenticated user
limit: Maximum number of results to return (1-100)
cursor: Optional pagination cursor
Returns:
List of followed accounts |
get_followers | Get users who follow an account. Args:
ctx: MCP context
handle: Optional handle to get followers for. If None, gets the authenticated user
limit: Maximum number of results to return (1-100)
cursor: Optional pagination cursor
Returns:
List of follower accounts |
like_post | Like a post. Args:
ctx: MCP context
uri: URI of the post to like
cid: CID of the post to like
Returns:
Status of the like operation |
unlike_post | Unlike a previously liked post. Args:
ctx: MCP context
like_uri: URI of the like.
Returns:
Status of the unlike operation |
send_post | Send a post to Bluesky. Args:
ctx: MCP context
text: Text content of the post
profile_identify: Optional handle or DID. Where to send post. If not provided, sends to current profile
reply_to: Optional reply reference with 'root' and 'parent' containing 'uri' and 'cid'
embed: Optional embed object (images, external links, records, or video)
langs: Optional list of language codes used in the post (defaults to ['en'])
facets: Optional list of rich text facets (mentions, links, etc.)
Returns:
Status of the post creation with uri and cid of the created post |
repost | Repost another user's post. Args:
ctx: MCP context
uri: URI of the post to repost
cid: CID of the post to repost
Returns:
Status of the repost operation |
unrepost | Remove a repost of another user's post. Args:
ctx: MCP context
repost_uri: URI of the repost to remove
Returns:
Status of the unrepost operation |
get_likes | Get likes for a post. Args:
ctx: MCP context
uri: URI of the post to get likes for
cid: Optional CID of the post (not strictly required)
limit: Maximum number of results to return (1-100)
cursor: Optional pagination cursor
Returns:
List of likes for the post |
get_reposted_by | Get users who reposted a post. Args:
ctx: MCP context
uri: URI of the post to get reposts for
cid: Optional CID of the post (not strictly required)
limit: Maximum number of results to return (1-100)
cursor: Optional pagination cursor
Returns:
List of users who reposted the post |
get_post | Get a specific post. Args:
ctx: MCP context
post_rkey: The record key of the post
profile_identify: Handle or DID of the post author
cid: Optional CID of the post
Returns:
The requested post |
get_posts | Get multiple posts by their URIs. Args:
ctx: MCP context
uris: List of post URIs to retrieve
Returns:
List of requested posts |
get_timeline | Get posts from your home timeline. Args:
ctx: MCP context
algorithm: Optional algorithm to use for timeline
cursor: Optional pagination cursor
limit: Maximum number of results to return
Returns:
Timeline feed with posts |
get_author_feed | Get posts from a specific user. Args:
ctx: MCP context
actor: Handle or DID of the user
cursor: Optional pagination cursor
filter: Optional filter for post types
limit: Maximum number of results to return
include_pins: Whether to include pinned posts
Returns:
Feed with posts from the specified user |
get_post_thread | Get a full conversation thread. Args:
ctx: MCP context
uri: URI of the post to get thread for
depth: How many levels of replies to include
parent_height: How many parent posts to include
Returns:
Thread with the post and its replies/parents |
resolve_handle | Resolve a handle to a DID. Args:
ctx: MCP context
handle: User handle to resolve (e.g. "user.bsky.social")
Returns:
Resolved DID information |
mute_user | Mute a user. Args:
ctx: MCP context
actor: Handle or DID of the user to mute
Returns:
Status of the mute operation |
unmute_user | Unmute a previously muted user. Args:
ctx: MCP context
actor: Handle or DID of the user to unmute
Returns:
Status of the unmute operation |
unfollow_user | Unfollow a user. Args:
ctx: MCP context
follow_uri: URI of the follow record to delete
Returns:
Status of the unfollow operation |
send_image | Send a post with a single image. Args:
ctx: MCP context
text: Text content of the post
image_data: Base64-encoded image data
image_alt: Alternative text description for the image
profile_identify: Optional handle or DID for the post author
reply_to: Optional reply information dict with keys uri and cid
langs: Optional list of language codes
facets: Optional list of facets (mentions, links, etc.)
Returns:
Status of the post creation |
send_images | Send a post with multiple images (up to 4). Args:
ctx: MCP context
text: Text content of the post
images_data: List of base64-encoded image data (max 4)
image_alts: Optional list of alt text for each image
profile_identify: Optional handle or DID for the post author
reply_to: Optional reply information dict with keys uri and cid
langs: Optional list of language codes
facets: Optional list of facets (mentions, links, etc.)
Returns:
Status of the post creation |
send_video | Send a post with a video. Args:
ctx: MCP context
text: Text content of the post
video_data: Base64-encoded video data
video_alt: Optional alternative text description for the video
profile_identify: Optional handle or DID for the post author
reply_to: Optional reply information dict with keys uri and cid
langs: Optional list of language codes
facets: Optional list of facets (mentions, links, etc.)
Returns:
Status of the post creation |
delete_post | Delete a post created by the authenticated user. Args:
ctx: MCP context
uri: URI of the post to delete
Returns:
Status of the delete operation |
follow_user | Follow a user. Args:
ctx: MCP context
handle: Handle of the user to follow
Returns:
Status of the follow operation |