/bluesky | Type: Application | PCID required: Yes
Tools
| Tool | Description |
|---|---|
bluesky_create_record | Create a record in a user’s repository (post, like, follow, repost, block) |
bluesky_delete_record | Delete a record from a user’s repository (unlike, unfollow, unblock, delete post/repost) |
bluesky_get_author_feed | Get posts by a specific user |
bluesky_get_blocks | Get the authenticated user’s block list |
bluesky_get_followers | Get a user’s followers |
bluesky_get_follows | Get the accounts a user follows |
bluesky_get_likes | Get the list of users who liked a post |
bluesky_get_post_thread | Get a post and its reply thread |
bluesky_get_profile | Get a user’s profile by handle or DID |
bluesky_get_timeline | Get the authenticated user’s home timeline |
bluesky_get_unread_count | Get the count of unread notifications |
bluesky_list_notifications | List the authenticated user’s notifications |
bluesky_mute_actor | Mute a user |
bluesky_search_actors | Search for Bluesky users by name or handle |
bluesky_search_posts | Search for posts on Bluesky |
bluesky_unmute_actor | Unmute a user |
bluesky_update_seen | Mark notifications as seen up to a timestamp |
bluesky_create_record
Create a record in a user’s repository (post, like, follow, repost, block) Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
collection | string | Yes | — | The NSID of the record collection. Common values: app.bsky.feed.post (posts), app.bsky.feed.like (likes), app.bsky.feed.repost (reposts), app.bsky.graph.follow (follows), app.bsky.graph.block (blocks). |
record | object | Yes | — | The record to create. Must include $type matching the collection. Structure depends on the collection type — see the tool description for examples of each record type. |
repo | string | Yes | — | The handle or DID of the authenticated user (the repo owner). Use the user’s own handle or DID. |
rkey | string | No | — | Record key (TID). Omit to auto-generate. |
validate | boolean | No | — | Whether to validate the record against its lexicon schema |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"collection": {
"type": "string",
"description": "The NSID of the record collection. Common values: app.bsky.feed.post (posts), app.bsky.feed.like (likes), app.bsky.feed.repost (reposts), app.bsky.graph.follow (follows), app.bsky.graph.block (blocks)."
},
"record": {
"type": "object",
"description": "The record to create. Must include $type matching the collection. Structure depends on the collection type — see the tool description for examples of each record type."
},
"repo": {
"type": "string",
"description": "The handle or DID of the authenticated user (the repo owner). Use the user's own handle or DID."
},
"rkey": {
"type": "string",
"description": "Record key (TID). Omit to auto-generate."
},
"validate": {
"type": "boolean",
"description": "Whether to validate the record against its lexicon schema"
}
},
"required": [
"PCID",
"collection",
"record",
"repo"
]
}
bluesky_delete_record
Delete a record from a user’s repository (unlike, unfollow, unblock, delete post/repost) Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
collection | string | Yes | — | The NSID of the record collection. Common values: app.bsky.feed.post (delete post), app.bsky.feed.like (unlike), app.bsky.feed.repost (unrepost), app.bsky.graph.follow (unfollow), app.bsky.graph.block (unblock). |
repo | string | Yes | — | The handle or DID of the authenticated user (the repo owner) |
rkey | string | Yes | — | The record key (TID) to delete — the last segment of the record’s AT-URI |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"collection": {
"type": "string",
"description": "The NSID of the record collection. Common values: app.bsky.feed.post (delete post), app.bsky.feed.like (unlike), app.bsky.feed.repost (unrepost), app.bsky.graph.follow (unfollow), app.bsky.graph.block (unblock)."
},
"repo": {
"type": "string",
"description": "The handle or DID of the authenticated user (the repo owner)"
},
"rkey": {
"type": "string",
"description": "The record key (TID) to delete — the last segment of the record's AT-URI"
}
},
"required": [
"PCID",
"collection",
"repo",
"rkey"
]
}
bluesky_get_author_feed
Get posts by a specific user Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actor | string | Yes | — | Bluesky handle or DID of the author |
limit | integer | No | — | Maximum number of posts (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
filter | string | No | — | Filter type for the feed |
includePins | boolean | No | — | Whether to include pinned posts |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"actor": {
"type": "string",
"description": "Bluesky handle or DID of the author"
},
"limit": {
"type": "integer",
"description": "Maximum number of posts (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
},
"filter": {
"type": "string",
"description": "Filter type for the feed",
"enum": [
"posts_with_replies",
"posts_no_replies",
"posts_with_media",
"posts_and_author_threads",
"posts_with_video"
]
},
"includePins": {
"type": "boolean",
"description": "Whether to include pinned posts"
}
},
"required": [
"PCID",
"actor"
]
}
bluesky_get_blocks
Get the authenticated user’s block list Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
limit | integer | No | — | Maximum number of results (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"limit": {
"type": "integer",
"description": "Maximum number of results (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID"
]
}
bluesky_get_followers
Get a user’s followers Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actor | string | Yes | — | Bluesky handle or DID of the user |
limit | integer | No | — | Maximum number of results (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"actor": {
"type": "string",
"description": "Bluesky handle or DID of the user"
},
"limit": {
"type": "integer",
"description": "Maximum number of results (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID",
"actor"
]
}
bluesky_get_follows
Get the accounts a user follows Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actor | string | Yes | — | Bluesky handle or DID of the user |
limit | integer | No | — | Maximum number of results (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"actor": {
"type": "string",
"description": "Bluesky handle or DID of the user"
},
"limit": {
"type": "integer",
"description": "Maximum number of results (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID",
"actor"
]
}
bluesky_get_likes
Get the list of users who liked a post Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
uri | string | Yes | — | AT-URI of the post to get likes for |
cid | string | No | — | CID of a specific version of the post |
limit | integer | No | — | Maximum number of results (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"uri": {
"type": "string",
"description": "AT-URI of the post to get likes for"
},
"cid": {
"type": "string",
"description": "CID of a specific version of the post"
},
"limit": {
"type": "integer",
"description": "Maximum number of results (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID",
"uri"
]
}
bluesky_get_post_thread
Get a post and its reply thread Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
uri | string | Yes | — | AT-URI of the post (e.g. at://did:plc:abc123/app.bsky.feed.post/3abc123) |
depth | integer | No | — | Number of reply levels to include (0-1000, default 6) |
parentHeight | integer | No | — | Number of parent/ancestor levels to include (0-1000, default 80) |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"uri": {
"type": "string",
"description": "AT-URI of the post (e.g. at://did:plc:abc123/app.bsky.feed.post/3abc123)"
},
"depth": {
"type": "integer",
"description": "Number of reply levels to include (0-1000, default 6)"
},
"parentHeight": {
"type": "integer",
"description": "Number of parent/ancestor levels to include (0-1000, default 80)"
}
},
"required": [
"PCID",
"uri"
]
}
bluesky_get_profile
Get a user’s profile by handle or DID Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actor | string | Yes | — | Bluesky handle (e.g. alice.bsky.social) or DID (e.g. did:plc:abc123) |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"actor": {
"type": "string",
"description": "Bluesky handle (e.g. alice.bsky.social) or DID (e.g. did:plc:abc123)"
}
},
"required": [
"PCID",
"actor"
]
}
bluesky_get_timeline
Get the authenticated user’s home timeline Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
algorithm | string | No | — | Algorithm variant for timeline composition (implementation-specific) |
limit | integer | No | — | Maximum number of posts (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"algorithm": {
"type": "string",
"description": "Algorithm variant for timeline composition (implementation-specific)"
},
"limit": {
"type": "integer",
"description": "Maximum number of posts (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID"
]
}
bluesky_get_unread_count
Get the count of unread notifications Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
priority | boolean | No | — | Count only priority notifications |
seenAt | string | No | — | Override seen-at timestamp for unread calculation (ISO 8601) |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"priority": {
"type": "boolean",
"description": "Count only priority notifications"
},
"seenAt": {
"type": "string",
"description": "Override seen-at timestamp for unread calculation (ISO 8601)"
}
},
"required": [
"PCID"
]
}
bluesky_list_notifications
List the authenticated user’s notifications Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
limit | integer | No | — | Maximum number of notifications (1-100, default 50) |
cursor | string | No | — | Pagination cursor from a previous response |
seenAt | string | No | — | Timestamp to compare for read/unread status (ISO 8601) |
priority | boolean | No | — | Filter to priority notifications only |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"limit": {
"type": "integer",
"description": "Maximum number of notifications (1-100, default 50)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
},
"seenAt": {
"type": "string",
"description": "Timestamp to compare for read/unread status (ISO 8601)"
},
"priority": {
"type": "boolean",
"description": "Filter to priority notifications only"
}
},
"required": [
"PCID"
]
}
bluesky_mute_actor
Mute a user Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actor | string | Yes | — | Bluesky handle or DID of the account to mute |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"actor": {
"type": "string",
"description": "Bluesky handle or DID of the account to mute"
}
},
"required": [
"PCID",
"actor"
]
}
bluesky_search_actors
Search for Bluesky users by name or handle Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
q | string | Yes | — | Search query string. Lucene syntax supported. |
limit | integer | No | — | Maximum number of results (1-100, default 25) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"q": {
"type": "string",
"description": "Search query string. Lucene syntax supported."
},
"limit": {
"type": "integer",
"description": "Maximum number of results (1-100, default 25)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID",
"q"
]
}
bluesky_search_posts
Search for posts on Bluesky Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
q | string | Yes | — | Search query string. Lucene syntax supported. |
sort | string | No | — | Sort order for results |
since | string | No | — | Filter posts after this datetime (ISO 8601) or date (YYYY-MM-DD) |
until | string | No | — | Filter posts before this datetime (ISO 8601) or date (YYYY-MM-DD) |
author | string | No | — | Filter to posts by this author (handle or DID) |
mentions | string | No | — | Filter to posts mentioning this account (handle or DID) |
lang | string | No | — | Filter by language (BCP-47 code, e.g. ‘en’) |
domain | string | No | — | Filter to posts linking to this hostname |
url | string | No | — | Filter to posts linking to this specific URL |
tag | string[] | No | — | Filter by hashtag (without # prefix). Multiple tags use AND logic. |
limit | integer | No | — | Maximum number of results (1-100, default 25) |
cursor | string | No | — | Pagination cursor from a previous response |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"q": {
"type": "string",
"description": "Search query string. Lucene syntax supported."
},
"sort": {
"type": "string",
"description": "Sort order for results",
"enum": [
"top",
"latest"
]
},
"since": {
"type": "string",
"description": "Filter posts after this datetime (ISO 8601) or date (YYYY-MM-DD)"
},
"until": {
"type": "string",
"description": "Filter posts before this datetime (ISO 8601) or date (YYYY-MM-DD)"
},
"author": {
"type": "string",
"description": "Filter to posts by this author (handle or DID)"
},
"mentions": {
"type": "string",
"description": "Filter to posts mentioning this account (handle or DID)"
},
"lang": {
"type": "string",
"description": "Filter by language (BCP-47 code, e.g. 'en')"
},
"domain": {
"type": "string",
"description": "Filter to posts linking to this hostname"
},
"url": {
"type": "string",
"description": "Filter to posts linking to this specific URL"
},
"tag": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by hashtag (without # prefix). Multiple tags use AND logic."
},
"limit": {
"type": "integer",
"description": "Maximum number of results (1-100, default 25)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous response"
}
},
"required": [
"PCID",
"q"
]
}
bluesky_unmute_actor
Unmute a user Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actor | string | Yes | — | Bluesky handle or DID of the account to unmute |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"actor": {
"type": "string",
"description": "Bluesky handle or DID of the account to unmute"
}
},
"required": [
"PCID",
"actor"
]
}
bluesky_update_seen
Mark notifications as seen up to a timestamp Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
seenAt | string | Yes | — | ISO 8601 datetime marking notifications as seen up to this point |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"seenAt": {
"type": "string",
"description": "ISO 8601 datetime marking notifications as seen up to this point"
}
},
"required": [
"PCID",
"seenAt"
]
}

