list_phone_numbers
Retrieve phone numbers based on type (assigned, unassigned, or all) with pagination support to manage Zoom resources effectively.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| next_page_token | No | Next page token | |
| page_size | No | Number of records returned | |
| type | No | Phone number type |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"next_page_token": {
"description": "Next page token",
"type": "string"
},
"page_size": {
"description": "Number of records returned",
"maximum": 300,
"minimum": 1,
"type": "number"
},
"type": {
"description": "Phone number type",
"enum": [
"assigned",
"unassigned",
"all"
],
"type": "string"
}
},
"type": "object"
}
Implementation Reference
- src/tools/phone.js:68-80 (handler)The handler function that implements the core logic of 'list_phone_numbers' by making a GET request to Zoom's '/phone/numbers' API endpoint with optional parameters for filtering and pagination.handler: async ({ type, page_size, next_page_token }) => { try { const params = {}; if (type) params.type = type; if (page_size) params.page_size = page_size; if (next_page_token) params.next_page_token = next_page_token; const response = await zoomApi.get('/phone/numbers', { params }); return handleApiResponse(response); } catch (error) { return handleApiError(error); } }
- src/tools/phone.js:63-67 (schema)Zod schema defining the input parameters for the 'list_phone_numbers' tool.schema: { type: z.enum(["assigned", "unassigned", "all"]).optional().describe("Phone number type"), page_size: z.number().min(1).max(300).optional().describe("Number of records returned"), next_page_token: z.string().optional().describe("Next page token") },
- src/server.js:51-51 (registration)Registers the phoneTools array (containing 'list_phone_numbers') with the MCP server via the registerTools utility.registerTools(phoneTools);