Skip to main content
Glama
avg-ape

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
group_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It discloses the output (open tickets per agent, priority breakdown, highlighting overloaded agents) but does not explain how 'overloaded' is defined, whether it accesses any resources, or if group_id restricts the scope. The return value is covered by output schema, but behavior lacks detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words, and front-loaded with the main purpose. Could benefit from a brief mention of the group_id parameter without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (one optional parameter, output schema exists), the description is mostly complete but misses the role of group_id. An agent would need to infer that group_id filters by group, which is not obvious.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one optional parameter, group_id, but the description does not mention it or explain its purpose. Since schema description coverage is 0%, the description should compensate, but it fails to clarify how group_id affects the results.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it shows open tickets per agent with a priority breakdown and highlights overloaded agents. This specific verb+resource combination distinguishes it effectively from sibling tools like csat_summary or group_distribution.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for monitoring agent workload, but it does not explicitly state when to use it versus alternatives or provide when-not scenarios. Among siblings, it is unique, so no direct comparison needed, but more explicit guidance would improve it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bulk_close_ticketsC

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

ParametersJSON Schema
NameRequiredDescriptionDefault
commentNo
dry_runNo
status_filterYes
older_than_daysYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the dry-run default but omits critical behavioral details such as whether closing is irreversible, permissions needed, or what happens to comments. For a mutation tool, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence) and front-loaded with the action and filter. However, it might be too sparse to convey necessary details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool performs a bulk write operation (closing tickets), the description is incomplete. It does not specify valid input values for status_filter, the effect of comments, or the meaning of output. Siblings are mostly reports, so the tool's unique role is not fully contextualized.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description must compensate. It only clarifies the 'dry_run' parameter default. The meaning of 'status_filter' as possibly 'solved' or 'pending' is implied but not explicit. Other parameters like 'comment' and 'older_than_days' lack any semantic addition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool closes tickets that are old and solved/pending, specifying verb and resource. However, it does not explicitly differentiate from sibling tools like bulk_tag_tickets, but the action 'close' is distinct enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description only mentions a default dry-run mode, giving minimal usage guidance. It does not specify when to use this tool versus alternatives, nor does it list any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bulk_tag_ticketsB

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

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsYes
queryYes
dry_runNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the dry-run default, which is a key behavioral trait. However, it does not mention authorization requirements, rate limits, or the impact of disabling dry-run (e.g., irreversible tagging).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that front-load the core purpose and a critical default behavior. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a bulk operation (3 params, output schema exists), the description is too minimal. It lacks explanation of output format, success/failure behavior, and potential side effects. Relies heavily on the output schema, which is not visible here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate. It explains 'query' and 'tags' as part of the search and tagging action, and mentions 'dry_run' default. However, no details on tag format, query syntax, or constraints, leaving significant gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'tag' and the resource 'tickets matching a Zendesk search query', and includes the default dry-run mode. It distinguishes itself from sibling tools like bulk_close_tickets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for tagging tickets based on a search query, but does not explicitly state when to use this tool vs alternatives or provide when-not conditions. No guidance on prerequisites or scenarios where dry-run should be disabled.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

csat_summaryC

Satisfaction scores over a period, broken down by agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It only states the purpose, with no mention of read/write nature, permissions, or any side effects. This leaves the agent with insufficient information.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with a single sentence, but it lacks necessary detail. While it avoids verbosity, it sacrifices informative value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite an output schema being present, the description does not explain what data is returned or how the breakdown by agent works. The purpose is clear, but context about the time period and output format is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'days' has 0% schema description coverage, and the description adds no meaning beyond the schema. The agent cannot infer what 'days' represents or its default behavior from the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool computes satisfaction scores over a period, broken down by agent. It distinguishes from sibling tools like agent_workload or response_time_analysis, which focus on different metrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. The description only explains what it does, not when it is appropriate or when other tools would be better.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

group_distributionA

Ticket volume and status breakdown across support groups.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It discloses the output (ticket volume and status breakdown) but does not state whether it is read-only or any other behavioral traits like data freshness or aggregation period.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, efficiently conveying the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and an output schema, the description is mostly complete. It could mention that it aggregates all groups, but it is sufficient for an agent to understand the tool's output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so schema coverage is 100%. The baseline for zero parameters is 4; no additional description needed for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool provides a breakdown of ticket volume and status across support groups, using a specific verb ('breakdown') and resource. It distinguishes well from siblings like agent_workload or csat_summary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like agent_workload or response_time_analysis. The context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

macro_auditA

Find unused or duplicate macros that should be cleaned up.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It only states the tool finds unused or duplicate macros, but does not mention whether it modifies data, requires permissions, or provides results. Critical behavioral traits are missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that delivers the purpose without any extraneous words. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema, the description does not need to detail return values, but it could provide more context on the output's nature (e.g., list of macro names). The tool is simple, so the description is adequate but leaves some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline score is 4 per guidelines. The description does not add parameter information, but none is needed since the input schema covers it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Find' and resource 'unused or duplicate macros', clearly stating what the tool does. It distinguishes itself from sibling tools, as none of the other tools focus on macro cleanup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternative tools like 'trigger_review' or 'stale_ticket_report'. There are no explicit contexts or exclusions, leaving the agent without direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

response_time_analysisC

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

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It only describes the output aggregation but does not disclose behavioral traits (e.g., read-only, permissions, date range effect, whether all tickets are included). Minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise, single sentence with no redundant words. Could be slightly expanded to include parameter context, but for a simple tool it is appropriately front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, output schema exists), the description lacks essential context such as parameter explanation, usage guidelines, and behavioral details. Incomplete for effective selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%—the description does not mention the 'days' parameter or its meaning. The schema provides a default but no clarification. The description adds no value for parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it computes average first-response and resolution times, grouped by priority and group. However, it does not differentiate from sibling analytics tools like csat_summary or sla_breach_report, so purpose is clear but lacks sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no mention of prerequisites or context. The description only states what it does, not when to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sla_breach_reportC

Find tickets breaching or approaching SLA targets.

ParametersJSON Schema
NameRequiredDescriptionDefault
hours_aheadNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description only hints at read-only nature ('Find'). Fails to disclose behavior around the hours_ahead parameter or any side effects, leaving agent uncertain about tool impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence but too terse; omits essential details like parameter meaning and usage context. Conciseness sacrifices necessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having output schema, the description lacks parameter explanation, no usage guidance, and no behavioral context. Agent likely cannot invoke tool correctly without additional knowledge.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'hours_ahead' has no description in schema or tool description. Agent cannot determine its meaning or usage, despite it being the key parameter for controlling report scope.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Find' and resource 'tickets', specifying scope as 'breaching or approaching SLA targets'. This distinctly identifies the tool's purpose among sibling report tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like stale_ticket_report or response_time_analysis. Agent must infer usage from tool name and context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stale_ticket_reportB

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

ParametersJSON Schema
NameRequiredDescriptionDefault
hoursNo
priorityNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It indicates a read-only report operation, but lacks details such as what constitutes an 'update', permission requirements, or pagination. Acceptable but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, 12 words, front-loads the purpose. Every word is necessary and no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description is mostly complete but leaves ambiguity about grouping and the priority parameter. Adequate for a simple report tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate. It links 'hours' to the hours parameter but does not clarify the role of the priority parameter (filter vs grouping). The mention of grouping by group is ambiguous as there is no group parameter. Adds marginal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool finds tickets with no update in N hours, grouped by group and priority. This verb-resource-constraint structure effectively distinguishes it from sibling tools like csat_summary or sla_breach_report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not state prerequisites, when not to use it, or mention related tools, leaving the agent to infer from sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ticket_triageB

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

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNonew,open

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose all behavioral traits. It indicates a read-only query but does not mention authentication requirements, rate limits, or response behavior when no tickets are found. Transparency is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (two sentences) and front-loads the purpose. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description captures the main use case but omits information about the status parameter. With the output schema available, return values are covered, but the lack of parameter context reduces completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is one parameter (status) with a default value but no description in the schema (0% coverage). The description does not mention this parameter or explain its role, failing to add meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool finds tickets missing assignees, groups, or priorities, which is a specific verb+resource. It distinguishes itself from siblings like stale_ticket_report and response_time_analysis by focusing on triage attributes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for identifying untriaged work but does not explicitly state when to use this tool versus alternatives. It lacks direct guidance on prerequisites or exclusions, though the context is reasonably clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trigger_reviewC

Audit active triggers and automations for issues.

ParametersJSON Schema
NameRequiredDescriptionDefault
include_automationsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description lacks behavioral details. Does not disclose if it's read-only, what 'audit' entails, or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is concise, but it omits important details. Every sentence must earn its place; this one is too brief to be fully helpful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description should explain what the tool returns. It doesn't. The tool audits triggers/automations but lacks details on the audit scope or output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not mention the single parameter 'include_automations' nor explain its effect. The description adds no value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'audit active triggers and automations for issues', clearly indicating the action and resource. It distinguishes from sibling tool 'macro_audit' which focuses on macros, not triggers/automations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. No context about prerequisites or typical scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.4/5.0
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

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    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
    14
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    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
  • F
    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.

Latest Blog Posts

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