bluesky_search_profiles
Search for user profiles on the BlueSky social network using queries to find specific accounts or discover new ones.
Instructions
Search for Bluesky profiles
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query string | |
| limit | No | Maximum number of results to return (default 25, max 100) | |
| cursor | No | Pagination cursor for next page of results |
Implementation Reference
- src/bluesky_mcp/server.py:160-182 (registration)Registration of the 'bluesky_search_profiles' tool within the list_tools function, including name, description, and input schema definition.types.Tool( name="bluesky_search_profiles", description="Search for Bluesky profiles", inputSchema={ "type": "object", "properties": { "query": { "type": "string", "description": "Search query string", }, "limit": { "type": "integer", "description": "Maximum number of results 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:163-181 (schema)Input schema for the 'bluesky_search_profiles' tool, defining required 'query' parameter and optional 'limit' and 'cursor'.inputSchema={ "type": "object", "properties": { "query": { "type": "string", "description": "Search query string", }, "limit": { "type": "integer", "description": "Maximum number of results 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:254-264 (handler)Handler implementation for 'bluesky_search_profiles' tool within the call_tool function. Validates query, extracts parameters, calls the Bluesky search_actors API, and returns JSON response.elif name == "bluesky_search_profiles": 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.actor.search_actors, {'term': query, 'limit': limit, 'cursor': cursor} )