Skip to main content
Glama

search_company_contacts

Search and retrieve company contacts using a query string and pagination options, enabling precise access to Zoom API resources via the MCP Server.

Input Schema

NameRequiredDescriptionDefault
next_page_tokenNoNext page token
page_sizeNoNumber of records returned
query_stringYesSearch query string

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" }, "query_string": { "description": "Search query string", "type": "string" } }, "required": [ "query_string" ], "type": "object" }

Implementation Reference

  • Executes the tool by searching Zoom contacts with the given query_string, optional pagination params, via the /contacts/search API endpoint. Handles response and errors using utility functions.
    handler: async ({ query_string, page_size, next_page_token }) => { try { const params = { query_string }; if (page_size) params.page_size = page_size; if (next_page_token) params.next_page_token = next_page_token; const response = await zoomApi.get('/contacts/search', { params }); return handleApiResponse(response); } catch (error) { return handleApiError(error); } } }
  • Zod schema for input validation: required query_string, optional page_size (1-300), next_page_token.
    schema: { query_string: z.string().describe("Search query string"), page_size: z.number().min(1).max(300).optional().describe("Number of records returned"), next_page_token: z.string().optional().describe("Next page token") },
  • Full tool definition object exported in contactsTools array.
    { name: "search_company_contacts", description: "Search company contacts", schema: { query_string: z.string().describe("Search query string"), page_size: z.number().min(1).max(300).optional().describe("Number of records returned"), next_page_token: z.string().optional().describe("Next page token") }, handler: async ({ query_string, page_size, next_page_token }) => { try { const params = { query_string }; if (page_size) params.page_size = page_size; if (next_page_token) params.next_page_token = next_page_token; const response = await zoomApi.get('/contacts/search', { params }); return handleApiResponse(response); } catch (error) { return handleApiError(error); } } }
  • src/server.js:52-52 (registration)
    Registers the entire contactsTools array (including search_company_contacts) with the MCP server via the registerTools helper.
    registerTools(contactsTools);
  • Helper function that iterates over a tools array and registers each tool on the MCP server using server.tool().
    const registerTools = (toolsArray) => { toolsArray.forEach(tool => { server.tool( tool.name, tool.schema, tool.handler, { description: tool.description } ); }); };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mattcoatsworth/zoom-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server