bluesky_search_posts
Search for posts on the BlueSky social network using a query string, with options to limit results and paginate through pages. Retrieve relevant content efficiently with this tool.
Instructions
Search for posts on Bluesky
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor for next page of results | |
| limit | No | Maximum number of posts to return (default 25, max 100) | |
| query | Yes | The search query |
Implementation Reference
- src/bluesky_mcp/server.py:211-221 (handler)Executes the bluesky_search_posts tool by validating the query parameter, setting defaults for limit and cursor, and calling the Bluesky API's search_posts endpoint via the authenticated client.elif name == "bluesky_search_posts": query = arguments.get("query") if not query: return [types.TextContent(type="text", text="Missing required argument: query")] limit = arguments.get("limit", 25) cursor = arguments.get("cursor") response = await asyncio.to_thread( bluesky.client.app.bsky.feed.search_posts, {'q': query, 'limit': limit, 'cursor': cursor} )
- src/bluesky_mcp/server.py:65-87 (registration)Registers the bluesky_search_posts tool with its description and input schema in the list_tools handler, defining required 'query' parameter and optional pagination.types.Tool( name="bluesky_search_posts", description="Search for posts on Bluesky", inputSchema={ "type": "object", "properties": { "query": { "type": "string", "description": "The search query", }, "limit": { "type": "integer", "description": "Maximum number of posts to return (default 25, max 100)", "default": 25, }, "cursor": { "type": "string", "description": "Pagination cursor for next page of results", }, }, "required": ["query"], }, ),
- src/bluesky_mcp/server.py:68-87 (schema)Defines the input schema for the bluesky_search_posts tool, specifying the structure and requirements for arguments.inputSchema={ "type": "object", "properties": { "query": { "type": "string", "description": "The search query", }, "limit": { "type": "integer", "description": "Maximum number of posts to return (default 25, max 100)", "default": 25, }, "cursor": { "type": "string", "description": "Pagination cursor for next page of results", }, }, "required": ["query"], }, ),