get_likes
Retrieve likes for a specific post on Bluesky Social MCP by providing the post URI, with optional filters for limit and pagination.
Instructions
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
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cid | No | ||
| cursor | No | ||
| limit | No | ||
| uri | Yes |
Implementation Reference
- server.py:416-448 (handler)The handler function for the 'get_likes' tool. It fetches likes for a given post URI using the Bluesky client, handles pagination with limit and cursor, and returns the likes data or an error.@mcp.tool() def get_likes( ctx: Context, uri: str, cid: Optional[str] = None, limit: Union[int, str] = 50, cursor: Optional[str] = None, ) -> Dict: """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 """ try: bluesky_client = get_authenticated_client(ctx) params = {"uri": uri, "limit": max(1, min(100, limit))} if cursor: params["cursor"] = cursor likes_response = bluesky_client.get_likes(**params) likes_data = likes_response.dict() return {"status": "success", "likes": likes_data} except Exception as e: error_msg = f"Failed to get likes: {str(e)}" return {"status": "error", "message": error_msg}