Skip to main content
Glama
JurreBrandsenInfoSupport

Zendesk API MCP Server

create_automation

Generate automated workflows in Zendesk by defining conditions and actions to streamline ticket management and improve efficiency.

Input Schema

NameRequiredDescriptionDefault
actionsYesActions to perform when automation conditions are met
conditionsYesConditions for the automation
descriptionNoAutomation description
titleYesAutomation title

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "actions": { "description": "Actions to perform when automation conditions are met", "items": { "additionalProperties": false, "properties": { "field": { "description": "Field to modify", "type": "string" }, "value": { "description": "Value to set" } }, "required": [ "field" ], "type": "object" }, "type": "array" }, "conditions": { "additionalProperties": false, "description": "Conditions for the automation", "properties": { "all": { "items": { "additionalProperties": false, "properties": { "field": { "description": "Field to check", "type": "string" }, "operator": { "description": "Operator for comparison", "type": "string" }, "value": { "description": "Value to compare against" } }, "required": [ "field", "operator" ], "type": "object" }, "type": "array" }, "any": { "items": { "additionalProperties": false, "properties": { "field": { "description": "Field to check", "type": "string" }, "operator": { "description": "Operator for comparison", "type": "string" }, "value": { "description": "Value to compare against" } }, "required": [ "field", "operator" ], "type": "object" }, "type": "array" } }, "type": "object" }, "description": { "description": "Automation description", "type": "string" }, "title": { "description": "Automation title", "type": "string" } }, "required": [ "title", "conditions", "actions" ], "type": "object" }

Implementation Reference

  • The handler function for the 'create_automation' tool. It prepares the automation data from input parameters and delegates the API call to zendeskClient.createAutomation, handling success and error responses.
    handler: async ({ title, description, conditions, actions }) => { try { const automationData = { title, description, conditions, actions }; const result = await zendeskClient.createAutomation(automationData); return { content: [{ type: "text", text: `Automation created successfully!\n\n${JSON.stringify(result, null, 2)}` }] }; } catch (error) { return { content: [{ type: "text", text: `Error creating automation: ${error.message}` }], isError: true }; } }
  • Zod schema defining the input parameters for the 'create_automation' tool, including title, optional description, conditions (all/any), and actions.
    schema: { title: z.string().describe("Automation title"), description: z.string().optional().describe("Automation description"), conditions: z.object({ all: z.array(z.object({ field: z.string().describe("Field to check"), operator: z.string().describe("Operator for comparison"), value: z.any().describe("Value to compare against") })).optional(), any: z.array(z.object({ field: z.string().describe("Field to check"), operator: z.string().describe("Operator for comparison"), value: z.any().describe("Value to compare against") })).optional() }).describe("Conditions for the automation"), actions: z.array(z.object({ field: z.string().describe("Field to modify"), value: z.any().describe("Value to set") })).describe("Actions to perform when automation conditions are met") },
  • src/server.js:47-52 (registration)
    Registration of all tools, including 'create_automation' from automationsTools, using server.tool() in a loop over the combined tools array. automationsTools imported at line 16 and spread into allTools at line 39.
    // Register each tool with the server allTools.forEach((tool) => { server.tool(tool.name, tool.schema, tool.handler, { description: tool.description, }); });
  • ZendeskClient helper method that performs the actual POST request to the Zendesk API to create an automation, called by the tool handler.
    async createAutomation(data) { return this.request("POST", "/automations.json", { automation: data }); }

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