Zendesk API MCP Server
Provides tools for managing Zendesk tickets, users, organizations, groups, macros, views, triggers, automations, and more, along with Help Center articles, Talk statistics, and Chat conversations.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Zendesk API MCP Server list my most recent high priority tickets"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Zendesk API MCP Server
A comprehensive Model Context Protocol (MCP) server for interacting with the Zendesk API. This server provides tools and resources for managing Zendesk Support, Talk, Chat, and Guide products.
## Features
- Complete coverage of Zendesk API functionality
- Tools for managing tickets, users, organizations, and more
- Resources for accessing Zendesk API documentation
- Secure authentication with Zendesk API tokens
## Getting Started
### Prerequisites
- Node.js 14 or higher
- A Zendesk account with API access
### Installation
1. Clone this repository
2. Install dependencies:
```
npm install
```
3. Create a `.env` file with your Zendesk credentials:
```
ZENDESK_SUBDOMAIN=your-subdomain
ZENDESK_EMAIL=your-email@example.com
ZENDESK_API_TOKEN=your-api-token
```
### Running the Server
Start the server:
```
npm start
```
For development with auto-restart:
```
npm run dev
```
### Testing with MCP Inspector
Test the server using the MCP Inspector:
```
npm run inspect
```
## Available Tools
### Tickets
- `list_tickets`: List tickets in Zendesk
- `get_ticket`: Get a specific ticket by ID
- `create_ticket`: Create a new ticket
- `update_ticket`: Update an existing ticket
- `delete_ticket`: Delete a ticket
### Users
- `list_users`: List users in Zendesk
- `get_user`: Get a specific user by ID
- `create_user`: Create a new user
- `update_user`: Update an existing user
- `delete_user`: Delete a user
### Organizations
- `list_organizations`: List organizations in Zendesk
- `get_organization`: Get a specific organization by ID
- `create_organization`: Create a new organization
- `update_organization`: Update an existing organization
- `delete_organization`: Delete an organization
### Groups
- `list_groups`: List agent groups in Zendesk
- `get_group`: Get a specific group by ID
- `create_group`: Create a new agent group
- `update_group`: Update an existing group
- `delete_group`: Delete a group
### Macros
- `list_macros`: List macros in Zendesk
- `get_macro`: Get a specific macro by ID
- `create_macro`: Create a new macro
- `update_macro`: Update an existing macro
- `delete_macro`: Delete a macro
### Views
- `list_views`: List views in Zendesk
- `get_view`: Get a specific view by ID
- `create_view`: Create a new view
- `update_view`: Update an existing view
- `delete_view`: Delete a view
### Triggers
- `list_triggers`: List triggers in Zendesk
- `get_trigger`: Get a specific trigger by ID
- `create_trigger`: Create a new trigger
- `update_trigger`: Update an existing trigger
- `delete_trigger`: Delete a trigger
### Automations
- `list_automations`: List automations in Zendesk
- `get_automation`: Get a specific automation by ID
- `create_automation`: Create a new automation
- `update_automation`: Update an existing automation
- `delete_automation`: Delete an automation
### Search
- `search`: Search across Zendesk data
### Help Center
- `list_articles`: List Help Center articles
- `get_article`: Get a specific Help Center article by ID
- `create_article`: Create a new Help Center article
- `update_article`: Update an existing Help Center article
- `delete_article`: Delete a Help Center article
### Talk
- `get_talk_stats`: Get Zendesk Talk statistics
### Chat
- `list_chats`: List Zendesk Chat conversations
## Available Resources
- `zendesk://docs/{section}`: Access documentation for different sections of the Zendesk API
## License
MIT
Available Tools
49 toolscreate_articleD
Inputs: title (required), body (required), section_id (required), locale, +4 more.
create_automationD
Inputs: title (required), conditions (required), actions (required), description.
create_groupD
Inputs: name (required), description.
create_macroD
Inputs: title (required), actions (required), description.
create_organizationD
Inputs: name (required), domain_names, details, notes, +1 more.
create_ticketD
Inputs: subject (required), comment (required), priority, status, +5 more.
create_triggerD
Inputs: title (required), conditions (required), actions (required), description.
create_userD
Inputs: name (required), email (required), role, phone, +3 more.
create_viewD
Inputs: title (required), conditions (required), description.
delete_articleD
Inputs: id (required).
delete_automationD
Inputs: id (required).
delete_groupD
Inputs: id (required).
delete_macroD
Inputs: id (required).
delete_organizationD
Inputs: id (required).
delete_ticketD
Inputs: id (required).
delete_triggerD
Inputs: id (required).
delete_userD
Inputs: id (required).
delete_viewD
Inputs: id (required).
get_articleD
Inputs: id (required).
get_automationD
Inputs: id (required).
get_groupD
Inputs: id (required).
get_macroD
Inputs: id (required).
get_organizationD
Inputs: id (required).
get_talk_statsD
Inputs: no named parameters.
get_ticketD
Inputs: id (required).
get_triggerD
Inputs: id (required).
get_userD
Inputs: id (required).
get_viewD
Inputs: id (required).
list_articlesD
Inputs: page, per_page, sort_by, sort_order.
list_automationsD
Inputs: page, per_page.
list_chatsD
Inputs: page, per_page.
list_groupsD
Inputs: page, per_page.
list_macrosD
Inputs: page, per_page.
list_organizationsD
Inputs: page, per_page.
list_ticketsD
Inputs: page, per_page, sort_by, sort_order.
list_triggersD
Inputs: page, per_page.
list_usersD
Inputs: page, per_page, role.
list_viewsD
Inputs: page, per_page.
searchD
Inputs: query (required), sort_by, sort_order, page, +1 more.
support_infoD
Inputs: no named parameters.
update_articleD
Inputs: id (required), title, body, locale, +4 more.
update_automationD
Inputs: id (required), title, description, conditions, +1 more.
update_groupD
Inputs: id (required), name, description.
update_macroD
Inputs: id (required), title, description, actions.
update_organizationD
Inputs: id (required), name, domain_names, details, +2 more.
update_ticketD
Inputs: id (required), subject, comment, priority, +5 more.
update_triggerD
Inputs: id (required), title, description, conditions, +1 more.
update_userD
Inputs: id (required), name, email, role, +4 more.
update_viewD
Inputs: id (required), title, description, conditions.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 49 tools
Each tool targets a distinct resource and action, with no overlap. The pattern of resource-specific CRUD operations (e.g., create_article vs. delete_article) clearly separates concerns.
All tools follow a consistent verb_noun pattern (e.g., create_article, get_article, list_articles). Minor pluralization for list operations is a standard and predictable convention.
With 49 tools, the server is over-scoped. While Zendesk is complex, this many tools (25+) makes it difficult for agents to navigate and is considered excessive per the rubric.
The tool set provides full CRUD for 9 major resources plus extras like search and talk_stats. Only minor gaps exist (e.g., no get for chat or update for talk_stats), but core workflows are covered.
Maintenance
Related MCP Connectors
Zendesk MCP Pack — tickets, users, organizations via OAuth.
Remote MCP server for managing Muninx tickets, messages, ticket search, and support analytics.
Zendesk MCP server for ChatGPT, Claude and any AI agent: list tickets, reply to ticket, update ticket, apply macro, add internal note and search tickets in your own Zendesk account. Cotlet works in the account through your Cloud Browser, a real Chrome where you sign in to Zendesk yourself; Cotlet does not store your password and you need no Zendesk API key. About the official Zendesk API: Zendesk has a full REST API, the Support API (also called the Ticketing API), but no documented Zendesk-hosted MCP server for working tickets (checked 16 Oct 2026). Zendesk's MCP documentation covers the MCP client, where Zendesk calls other servers. Setup and FAQ: https://cotlet.dev/integrations/zendesk-api-mcp-server
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that authenticates via browser session cookies to access Zendesk's REST API without API tokens, supporting reads and writes with agent permissions.1933 npm1MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for Zendesk support workflows that enables ticket search, lookup, creation, commenting, status updates, and user listing through natural language. It uses OAuth authentication and supports both internal notes and public comments.MIT
- AlicenseNot gradedqualityDmaintenanceComprehensive MCP server providing 89 tools and 13 React UI apps for complete Zendesk Support API integration, enabling ticket, user, organization, and automation management.MIT
- AlicenseNot gradedqualityDmaintenanceMCP server to retrieve information from Zendesk Help Center using anonymous authentication. Provides tools to list categories, sections, articles, and search articles.MIT