Skip to main content
Glama
zendesk-ops-mcp

zendesk-ops-mcp

by avg-ape

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 token

You 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: tokenless-zendesk-mcp

Tools

Tool

Description

ticket_triage

Find tickets missing assignees, groups, or priorities

stale_ticket_report

Tickets with no update in N hours, grouped by group/priority

bulk_tag_tickets

Tag tickets matching a search query (dry-run by default)

bulk_close_tickets

Close old solved/pending tickets (dry-run by default)

sla_breach_report

Tickets breaching or approaching SLA targets

csat_summary

Satisfaction scores over a period, by agent

response_time_analysis

First-response and resolution time averages

agent_workload

Open tickets per agent with priority breakdown

group_distribution

Ticket volume and status breakdown across groups

macro_audit

Find unused or duplicate macros

trigger_review

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 --integration

License

MIT

Available Tools

11 tools
agent_workloadA

Open tickets per agent with priority breakdown. Highlights overloaded agents.

Inputs: group_id. Returns: result

bulk_close_ticketsC

Close old solved/pending tickets. Defaults to dry-run mode.

Inputs: status_filter (required), older_than_days (required), comment, dry_run. Returns: result

bulk_tag_ticketsB

Tag tickets matching a Zendesk search query. Defaults to dry-run mode.

Inputs: tags (required), query (required), dry_run. Returns: result

csat_summaryC

Satisfaction scores over a period, broken down by agent.

Inputs: days. Returns: result

group_distributionA

Ticket volume and status breakdown across support groups.

Inputs: no named parameters. Returns: result

macro_auditA

Find unused or duplicate macros that should be cleaned up.

Inputs: no named parameters. Returns: result

response_time_analysisC

Average first-response and resolution times, by priority and group.

Inputs: days. Returns: result

sla_breach_reportC

Find tickets breaching or approaching SLA targets.

Inputs: hours_ahead. Returns: result

stale_ticket_reportB

Find tickets with no update in N hours, grouped by group and priority.

Inputs: hours, priority. Returns: result

ticket_triageB

Find tickets missing assignees, groups, or priorities. Surfaces untriaged work.

Inputs: status. Returns: result

trigger_reviewC

Audit active triggers and automations for issues.

Inputs: include_automations. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 11 tools

    Disambiguation5/5

    Each tool targets a distinct operational concern: agent workload, satisfaction, group distribution, etc. No two tools have overlapping purposes.

    Naming Consistency5/5

    All tools use consistent snake_case naming with clear, descriptive verbs and nouns (e.g., agent_workload, csat_summary, bulk_close_tickets).

    Tool Count5/5

    11 tools is well within the optimal range for a domain-specific server, covering analytics and maintenance without redundancy.

    Completeness4/5

    Covers core Zendesk ops needs: workload, satisfaction, SLAs, stale tickets, triage, bulk actions, and audits. Minor gaps like individual ticket search or agent scheduling are acceptable given focus on operations.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      MCP server that authenticates via browser session cookies to access Zendesk's REST API without API tokens, supporting reads and writes with agent permissions.
      19
      33 npm
      1
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP 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
    • A
      license
      Not graded
      quality
      D
      maintenance
      Comprehensive MCP server providing 89 tools and 13 React UI apps for complete Zendesk Support API integration, enabling ticket, user, organization, and automation management.
      MIT