update_organization
Modify Zendesk organization details including name, domain names, notes, and tags by providing the organization ID and updated values.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Organization ID to update | |
| name | No | Updated organization name | |
| domain_names | No | Updated domain names | |
| details | No | Updated details | |
| notes | No | Updated notes | |
| tags | No | Updated tags |
Implementation Reference
- src/tools/organizations.js:99-121 (handler)The MCP tool handler for 'update_organization'. Prepares the update data from optional parameters and delegates to zendeskClient.updateOrganization, returning formatted success or error response.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 }; }
- src/tools/organizations.js:91-98 (schema)Zod schema defining the input parameters for the update_organization tool, including required ID and optional fields.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:47-52 (registration)Registers all MCP tools, including 'update_organization', with the McpServer by iterating over the combined tools array.// Register each tool with the server allTools.forEach((tool) => { server.tool(tool.name, tool.schema, tool.handler, { description: tool.description, }); });
- src/zendesk-client.js:134-138 (helper)ZendeskClient method that performs the actual PUT request to the Zendesk Organizations API endpoint.async updateOrganization(id, data) { return this.request("PUT", `/organizations/${id}.json`, { organization: data, }); }