Skip to main content
Glama
JurreBrandsenInfoSupport

Zendesk API MCP Server

update_organization

Modify organization details in Zendesk by updating fields such as name, domain names, details, notes, and tags using the organization ID.

Input Schema

NameRequiredDescriptionDefault
detailsNoUpdated details
domain_namesNoUpdated domain names
idYesOrganization ID to update
nameNoUpdated organization name
notesNoUpdated notes
tagsNoUpdated tags

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "details": { "description": "Updated details", "type": "string" }, "domain_names": { "description": "Updated domain names", "items": { "type": "string" }, "type": "array" }, "id": { "description": "Organization ID to update", "type": "number" }, "name": { "description": "Updated organization name", "type": "string" }, "notes": { "description": "Updated notes", "type": "string" }, "tags": { "description": "Updated tags", "items": { "type": "string" }, "type": "array" } }, "required": [ "id" ], "type": "object" }

Implementation Reference

  • The main handler function for the 'update_organization' MCP tool. It conditionally builds the organization update data from input parameters and delegates to zendeskClient.updateOrganization(id, orgData). Returns formatted success or error response in MCP content format.
    handler: async ({ id, name, domain_names, details, notes, tags }) => { try { const orgData = {}; if (name !== undefined) orgData.name = name; if (domain_names !== undefined) orgData.domain_names = domain_names; if (details !== undefined) orgData.details = details; if (notes !== undefined) orgData.notes = notes; if (tags !== undefined) orgData.tags = tags; const result = await zendeskClient.updateOrganization(id, orgData); return { content: [{ type: "text", text: `Organization updated successfully!\n\n${JSON.stringify(result, null, 2)}` }] }; } catch (error) { return { content: [{ type: "text", text: `Error updating organization: ${error.message}` }], isError: true }; } }
  • Zod-based input schema for the 'update_organization' tool parameters: required 'id', optional 'name', 'domain_names', 'details', 'notes', 'tags'.
    schema: { id: z.number().describe("Organization ID to update"), name: z.string().optional().describe("Updated organization name"), domain_names: z.array(z.string()).optional().describe("Updated domain names"), details: z.string().optional().describe("Updated details"), notes: z.string().optional().describe("Updated notes"), tags: z.array(z.string()).optional().describe("Updated tags") },
  • src/server.js:31-52 (registration)
    Registration block where organizationsTools (containing update_organization) is spread into allTools array and each tool is registered with the MCP server using server.tool(name, schema, handler).
    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, }); });
  • ZendeskClient helper method that executes the PUT request to the Zendesk API endpoint /organizations/{id}.json to update the organization data.
    async updateOrganization(id, data) { return this.request("PUT", `/organizations/${id}.json`, { organization: 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