
Zendesk Mcp
@michaelrice
About Zendesk Mcp
Zendesk MCP server for Claude Code and other MCP clients
Basic information
Category
Data & Analytics
License
Apache-2.0
Runtime
python
Transports
stdio
Publisher
michaelrice
Submitted by
Michael Rice
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"zendesk-mcp": {
"command": "uvx",
"args": [
"zendesk-mcp"
]
}
}
}Tools
29Get a Zendesk ticket by ID. Returns ticket fields including status, priority, requester, assignee, tags, and description.
Search Zendesk tickets by keyword and/or status. keywords: free-text search (e.g. 'login failure LDAP'). status: new, open, pending, hold, solved, closed β leave empty for all statuses. Returns id, subject, status, requester, assignee, and dates.
Get all comments (public replies and internal notes) for a Zendesk ticket. Includes attachment metadata but does not download files.
List all attachments across all comments for a Zendesk ticket. Returns filename, content type, size, and download URL for each. Use zendesk_download_attachment to fetch file contents.
Download a Zendesk attachment and return its contents. ticket_id is required to organize the local cache. Obtain attachment_url and filename from zendesk_list_attachments. Archives are unpacked, PDFs are text-extracted, images are base64-encoded.
Format a Zendesk ticket and its comments as an issue draft. Returns Markdown with ticket metadata, full conversation, and an empty Steps to Reproduce section. Use this output as the description when creating an issue in your tracker.
Post a public reply on a Zendesk ticket. The reply is visible to the requester. Use for customer-facing responses.
Post an internal note on a Zendesk ticket. Internal notes are only visible to agents and are not sent to the requester.
Set the status of a Zendesk ticket. Valid statuses: new, open, pending, hold, solved, closed.
Assign a Zendesk ticket to an agent by their email address. Pass 'me' as assignee_email to assign the ticket to yourself (the authenticated user).
Update one or more fields on a Zendesk ticket. Pass only the fields you want to change. status: new/open/pending/hold/solved/closed. priority: low/normal/high/urgent. type: problem/incident/question/task. assignee_id, requester_id, group_id, custom_status_id are integer IDs. due_at is ISO8601. Returns JSON of the refreshed ticket.
Get time tracking data for a Zendesk ticket. Returns total time spent and time spent on the last update, in both seconds and human-readable format (e.g. '2h 15m').
Log time spent on a Zendesk ticket. Adds seconds to the running total and records it as the last-update time. Returns logged amount and new total in seconds and human-readable format.
Get linked GitLab issues, merge requests, and commits for a Zendesk ticket via the Git-Zen integration. Returns structured lists with state, labels, weight, and direct GitLab links.
Create a new Zendesk ticket. subject and description are required. priority: low/normal/high/urgent. type: problem/incident/question/task. requester_id/assignee_id are user IDs (integers). custom_fields is a list of {id, value} dicts. Returns JSON of the created ticket.
List Zendesk tickets with pagination. page: 1-based page number. per_page: max 100. sort_by: created_at, updated_at, priority, or status. sort_order: asc or desc. Returns tickets plus pagination metadata.
Add a tag to a Zendesk ticket. Idempotent: adding an existing tag returns the current tag list without modifying the ticket. Returns JSON with ticket_id and current tags.
Remove a tag from a Zendesk ticket. Idempotent: removing a tag that isn't present returns the current tag list without modifying the ticket. Returns JSON with ticket_id and current tags.
List all active Zendesk views. Returns JSON array of {id, title}.
Get a Zendesk view's definition including filter conditions and execution settings. Returns JSON with id, title, active, conditions, execution.
Get the tickets currently matching a Zendesk view. Returns JSON array of tickets with essential fields.
List all active Zendesk macros with their actions. Returns JSON array of {id, title, description, actions: [{field, value}]}.
Preview the effect a macro would have (without applying it). Returns the result payload from Zendesk's apply preview endpoint.
Apply a macro to a Zendesk ticket. Fetches the macro preview, applies field changes, and posts any comment included in the macro. Returns JSON with id, status, tags, applied_changes, comment_added.
Search Zendesk users by name or email. Returns JSON array of {id, name, email, role}.
List all active Zendesk groups (excluding deleted). Returns JSON array of {id, name}.
List the members of a Zendesk group. Returns JSON array of {id, name, email}.
Fetch a Zendesk organization including its custom fields and tags. Returns JSON with id, name, organization_fields, tags, created_at, updated_at.
List all custom ticket statuses defined in Zendesk. Returns JSON array of {id, agent_label, end_user_label, status_category, active, default}. Use the id when setting custom_status_id on a ticket.
Overview
What is Zendesk Mcp?
Zendesk Mcp is an MCP server that provides read and write tools for Zendesk tickets, comments, attachments, users, groups, organizations, views, macros, and time tracking. It is designed for use with Claude Code and other MCP clients.
How to use Zendesk Mcp?
Install Python 3.10+, create a virtualenv, install the package from a clone of the repository, run OAuth setup with python -m zendesk_mcp setup, then register the server with Claude Code using an absolute path to the venv's Python. Optionally allow read tools in ~/.claude/settings.json.
Key features of Zendesk Mcp
- Search, list, and fetch tickets with pagination
- Create, update, and set status on tickets
- Post public replies and internal notes
- Assign tickets to agents
- Browse and apply views and macros
- Look up users, groups, organizations, and custom statuses
- Read and log time-tracking entries
- Format tickets as Markdown issue draft for handoff
Use cases of Zendesk Mcp
- Automate ticket triaging and responses via Claude Code
- Fetch ticket context to assist in customer support workflows
- Apply macros and views to streamline agent actions
- Handoff ticket details to GitLab, GitHub, or Jira issue trackers
FAQ from Zendesk Mcp
What authentication does Zendesk Mcp use?
It uses OAuth with a Zendesk OAuth client. The user runs an interactive setup that opens a browser for authorization and stores a token locally.
What are the runtime requirements?
Python 3.10 or newer. No additional runtime beyond the Python packages installed in a virtualenv.
Are there any optional integrations?
Yes, Git-Zen integration reads linked GitLab issues/MRs/commits. Also optional Help Center knowledge base exposed as an MCP resource.
Does Zendesk Mcp support write operations?
Yes, it includes tools for creating and updating tickets, posting comments, setting status, assigning tickets, and logging time. These require explicit per-call approval unless added to the allowed permissions list.
What MCP transports or prompts are available?
The server uses standard MCP transport for tools. It exposes two prompts: analyze-ticket and draft-ticket-response.
More Data & Analytics MCP servers
HubSpot MCP Server
baryhuangA Model Context Protocol (MCP) server that enables AI assistants to interact with HubSpot CRM data, providing built-in vector storage and caching mechanisms help overcome HubSpot API limitations while improving response times.
π Semantic Scholar MCP Server
JackKuo666π This project implements a Model Context Protocol (MCP) server for interacting with the Semantic Scholar API. It provides tools for searching papers, retrieving paper and author details, and fetching citations and references.
Bright Data MCP
luminati-ioA powerful Model Context Protocol (MCP) server that provides an all-in-one solution for public web access.
PubMed MCP Server
JackKuo666π Enable AI assistants to search, access, and analyze PubMed articles through a simple MCP interface.
Healthcare MCP Server
CicatriizA Model Context Protocol (MCP) server providing AI assistants with access to healthcare data and medical information tools, including FDA drug info, PubMed, medRxiv, NCBI Bookshelf, clinical trials, ICD-10, DICOM metadata, and a medical calculator.
Comments