search_users
Find users in WebSim by name or other identifiers to connect with community members, collaborate on projects, or manage profiles.
Instructions
Search for WebSim users
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query | |
| limit | No | Number of results to return (default: 20) | |
| offset | No | Number of results to skip (default: 0) |
Input Schema (JSON Schema)
{
"properties": {
"limit": {
"default": 20,
"description": "Number of results to return (default: 20)",
"type": "number"
},
"offset": {
"default": 0,
"description": "Number of results to skip (default: 0)",
"type": "number"
},
"query": {
"description": "Search query",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
}
Implementation Reference
- server.js:553-566 (handler)MCP tool handler for search_users: validates input with SearchParamsSchema, invokes apiClient.searchUsers, and returns formatted JSON response with search results.handler: async (args) => { const { query, limit = 20, offset = 0 } = SearchParamsSchema.parse(args); const result = await apiClient.searchUsers(query, limit, offset); return { content: [{ type: "text", text: JSON.stringify({ success: true, data: result, message: `Found ${result.items?.length || 0} users matching "${query}"` }, null, 2) }] }; }
- server.js:145-152 (helper)WebSimAPIClient helper method that performs the HTTP GET request to the WebSim /api/v1/user-search endpoint with query parameters.async searchUsers(query, limit = 20, offset = 0) { const params = new URLSearchParams({ q: query, limit: limit.toString(), offset: offset.toString() }); return this.makeRequest(`/api/v1/user-search?${params}`); }
- server.js:41-45 (schema)Zod validation schema for search parameters (query, limit, offset) used in search_users tool handler.const SearchParamsSchema = z.object({ query: z.string().describe('Search query'), limit: z.number().optional().default(20).describe('Number of results to return (default: 20)'), offset: z.number().optional().default(0).describe('Number of results to skip (default: 0)') });
- server.js:530-552 (registration)Tool registration in the tools array: defines name, description, inputSchema (mirroring SearchParamsSchema), and references the handler function.{ name: "search_users", description: "Search for WebSim users", inputSchema: { type: "object", properties: { query: { type: "string", description: "Search query" }, limit: { type: "number", description: "Number of results to return (default: 20)", default: 20 }, offset: { type: "number", description: "Number of results to skip (default: 0)", default: 0 } }, required: ["query"] },