list_users
Retrieve user details from the Zoom API MCP Server, filtering by status, role, and pagination to manage and organize user data efficiently.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page_number | No | Page number | |
| page_size | No | Number of records returned | |
| role_id | No | Role ID | |
| status | No | User status |
Implementation Reference
- src/tools/users.js:14-27 (handler)The async handler function that implements the list_users tool logic: builds query parameters from optional inputs (status, page_size, page_number, role_id) and calls the Zoom API GET /users endpoint, then handles the response or error.handler: async ({ status, page_size, page_number, role_id }) => { try { const params = {}; if (status) params.status = status; if (page_size) params.page_size = page_size; if (page_number) params.page_number = page_number; if (role_id) params.role_id = role_id; const response = await zoomApi.get('/users', { params }); return handleApiResponse(response); } catch (error) { return handleApiError(error); } }
- src/tools/users.js:8-13 (schema)Zod input schema defining optional parameters for filtering users by status, pagination (page_size, page_number), and role_id.schema: { status: z.enum(["active", "inactive", "pending"]).optional().describe("User status"), page_size: z.number().min(1).max(300).optional().describe("Number of records returned"), page_number: z.number().min(1).optional().describe("Page number"), role_id: z.string().optional().describe("Role ID") },
- src/server.js:47-47 (registration)Registers the usersTools array (which contains the list_users tool definition) with the MCP server by calling registerTools, which invokes server.tool() for each tool.registerTools(usersTools);