zendesk-ops-mcp
Provides operational tooling over the Zendesk Support API for ticket triage, SLA monitoring, agent workload analysis, and system health audits.
Click on "Install 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-ops-mcpTriage open tickets — what's missing assignees or priorities?"
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-ops-mcp
An MCP server that provides operational tooling over the Zendesk Support API — ticket triage, SLA monitoring, agent workload analysis, and system health audits. Built for use with Claude Code or Claude Desktop, it gives support ops teams a conversational interface to automate the manual toil of managing Zendesk workflows.
Quick Start
git clone https://github.com/avg-ape/zendesk-ops-mcp.git
cd zendesk-ops-mcp
python3 -m venv .venv
source .venv/bin/activate
pip install -e .Configure your Zendesk credentials:
cp .env.example .env
# Edit .env with your subdomain, email, and API tokenYou can get a free Zendesk trial at zendesk.com/register. Enable API tokens in Admin Center > Apps & Integrations > APIs.
Use with Claude Code
Add to your Claude Code MCP config (~/.claude/settings.json):
{
"mcpServers": {
"zendesk-ops": {
"command": "/path/to/zendesk-ops-mcp/.venv/bin/python",
"args": ["-m", "zendesk_ops_mcp.server"],
"env": {
"ZENDESK_SUBDOMAIN": "your-subdomain",
"ZENDESK_EMAIL": "your-email@example.com",
"ZENDESK_API_TOKEN": "your-api-token"
}
}
}
}Then ask Claude things like:
"Triage open tickets — what's missing assignees or priorities?"
"Show me tickets that have gone stale in the last 12 hours"
"What's the CSAT score over the last 30 days, broken down by agent?"
"Audit our macros — are there any duplicates or unused ones?"
"Which agents are overloaded right now?"
Related MCP server: Zendesk API MCP Server
Tools
Tool | Description |
| Find tickets missing assignees, groups, or priorities |
| Tickets with no update in N hours, grouped by group/priority |
| Tag tickets matching a search query (dry-run by default) |
| Close old solved/pending tickets (dry-run by default) |
| Tickets breaching or approaching SLA targets |
| Satisfaction scores over a period, by agent |
| First-response and resolution time averages |
| Open tickets per agent with priority breakdown |
| Ticket volume and status breakdown across groups |
| Find unused or duplicate macros |
| Audit active triggers and automations |
Architecture
Zendesk Client (zendesk_client.py): Async HTTP client built on httpx with Basic auth (API token). Handles both offset pagination (next_page) and cursor pagination for search endpoints. Rate limit tracking via X-RateLimit-Remaining headers.
Pydantic Models (models.py): All tool outputs are typed Pydantic models with human-readable __str__ methods. Claude gets structured data to reason about, not raw JSON.
Dual Pagination: Zendesk uses offset pagination for list endpoints (/api/v2/tickets.json) and search-specific pagination. The client handles both transparently via get_all() and search() methods.
Development
# Install with dev dependencies
pip install -e ".[dev]"
# Run unit tests
pytest tests/ -v
# Run integration tests (requires Zendesk credentials)
pytest tests/ -v --integrationLicense
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/avg-ape/zendesk-ops-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server