Skip to main content
Glama
JurreBrandsenInfoSupport

Zendesk API MCP Server

list_tickets

Retrieve and organize Zendesk tickets with pagination and sorting options, enabling efficient ticket management and structured data access for support workflows.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPage number for pagination
per_pageNoNumber of tickets per page (max 100)
sort_byNoField to sort by
sort_orderNoSort order (asc or desc)

Implementation Reference

  • The handler function that implements the core logic of the 'list_tickets' tool. It constructs parameters, calls zendeskClient.listTickets, formats the result as JSON text response, and handles errors.
    handler: async ({ page, per_page, sort_by, sort_order }) => { try { const params = { page, per_page, sort_by, sort_order }; const result = await zendeskClient.listTickets(params); return { content: [ { type: "text", text: JSON.stringify(result, null, 2), }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error listing tickets: ${error.message}` }, ], isError: true, }; } },
  • Zod schema defining the input parameters for the 'list_tickets' tool, including pagination and sorting options.
    page: z.number().optional().describe("Page number for pagination"), per_page: z .number() .optional() .describe("Number of tickets per page (max 100)"), sort_by: z.string().optional().describe("Field to sort by"), sort_order: z .enum(["asc", "desc"]) .optional() .describe("Sort order (asc or desc)"), },
  • src/server.js:31-52 (registration)
    Registration of all tools including 'list_tickets' from ticketsTools. Tools are collected into allTools array and registered dynamically via server.tool() calls.
    const allTools = [ ...ticketsTools, ...usersTools, ...organizationsTools, ...groupsTools, ...macrosTools, ...viewsTools, ...triggersTools, ...automationsTools, ...searchTools, ...helpCenterTools, ...supportTools, ...talkTools, ...chatTools, ]; // Register each tool with the server allTools.forEach((tool) => { server.tool(tool.name, tool.schema, tool.handler, { description: tool.description, }); });
  • Helper method in ZendeskClient that performs the actual API request to list tickets, called by the tool handler.
    async listTickets(params) { return this.request("GET", "/tickets.json", null, params);

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/JurreBrandsenInfoSupport/zendesk-mcp'

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