Zendesk MCP Server
Provides tools for managing Zendesk Support tickets, including searching, creating, updating, adding comments and notes, retrieving metrics, audits, and bulk exports. Also supports Zendesk QA (Klaus) for reviews and CSAT, and Zendesk Workforce Management for activities and shifts.
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 MCP Servershow me all open 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 MCP Server
A Model Context Protocol (MCP) server that provides AI assistants like Claude with seamless integration to Zendesk Support. Enables natural language interactions with Zendesk tickets, allowing you to search, create, update, and manage support tickets through conversational AI.
✨ Features
🎫 Complete Ticket Management: Create, read, update, and search Zendesk tickets
💬 Comments & Notes: Add public comments and private internal notes
🔍 Advanced Search: Search tickets using Zendesk's powerful query syntax
🔗 Incident Management: Retrieve and manage linked incident tickets
🏷️ Tag Management: Add and manage ticket tags and metadata
🏢 Brand Support: List brands and search/analyze tickets by brand
📊 Ticket Analysis: Analyze tickets for root cause analysis with full comment history
📈 Trend Analysis: Sample tickets per day over time for pattern detection
🎛️ Field Discovery: List all ticket fields with IDs, types, and dropdown options
📝 QA Integration: Access Zendesk QA (formerly Klaus) reviews, CSAT, quizzes, and scorecards
⏱️ Ticket Metrics: Pull response times, resolution times, and reopen counts per ticket
🕵️ Ticket Audits: Full field-level change history for any ticket
📦 Incremental Exports: Cursor-based bulk ticket exports for large dataset pulls
🤖 AI Agent Export: Download bot conversation exports from Zendesk AI Agents
👷 Workforce Management: Access WFM activities, reports, shifts, and time-off data
🔒 Secure Authentication: Uses Zendesk API tokens for secure access
🚀 Easy Installation: Available via npm, npx, or manual setup
Related MCP server: Zendesk MCP Server
🚀 Quick Start
Option 1: NPM Installation (Recommended)
npm install -g zd-mcp-serverOption 2: Use with npx (No Installation)
npx zd-mcp-serverOption 3: Development Setup
git clone https://github.com/famousdrew/zd-mcp-server.git
cd zd-mcp-server
npm install
npm run build⚙️ Configuration
Environment Variables
Set these environment variables in your system or MCP client configuration:
export ZENDESK_EMAIL="your-email@company.com"
export ZENDESK_TOKEN="your-zendesk-api-token"
export ZENDESK_SUBDOMAIN="your-company" # from https://your-company.zendesk.com
# Optional: For Zendesk QA (formerly Klaus) features
export ZENDESK_QA_API_TOKEN="your-qa-api-token"
# Optional: For Workforce Management features
export ZENDESK_WFM_API_TOKEN="your-wfm-api-token"
# Optional: For AI Agent conversation export features
export ZENDESK_AI_EXPORT_TOKEN="your-ai-agents-api-token"
export ZENDESK_AI_EXPORT_ORG_ID="your-organization-id"
export ZENDESK_AI_EXPORT_BOT_ID="your-bot-id"Claude Desktop Setup
Add to your Claude Desktop configuration file:
Location:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
Configuration:
{
"mcpServers": {
"zendesk": {
"command": "npx",
"args": ["-y", "zd-mcp-server"],
"env": {
"ZENDESK_EMAIL": "your-email@company.com",
"ZENDESK_TOKEN": "your-zendesk-api-token",
"ZENDESK_SUBDOMAIN": "your-company"
}
}
}
}Alternative (if installed globally):
{
"mcpServers": {
"zendesk": {
"command": "zd-mcp-server",
"env": {
"ZENDESK_EMAIL": "your-email@company.com",
"ZENDESK_TOKEN": "your-zendesk-api-token",
"ZENDESK_SUBDOMAIN": "your-company"
}
}
}
}Claude Code (CLI) Setup
claude mcp add zendesk \
--transport stdio \
--env ZENDESK_EMAIL=your-email@company.com \
--env ZENDESK_TOKEN=your-zendesk-api-token \
--env ZENDESK_SUBDOMAIN=your-company \
-- npx -y zd-mcp-serverCursor IDE Setup
Add to ~/.cursor/mcp.json or .cursor/mcp.json in your project:
{
"mcpServers": {
"zendesk": {
"command": "npx",
"args": ["-y", "zd-mcp-server"],
"env": {
"ZENDESK_EMAIL": "your-email@company.com",
"ZENDESK_TOKEN": "your-zendesk-api-token",
"ZENDESK_SUBDOMAIN": "your-company"
}
}
}
}Other MCP Clients
For other MCP-compatible clients (Cline, Windsurf, etc.), refer to their documentation for MCP server configuration. The server supports standard MCP protocols.
🛠️ Available Tools
Core Ticket Tools
Tool | Description | Example Usage |
| Retrieve a ticket by ID | "Get ticket #12345" |
| Get detailed ticket with comments | "Show me full details for ticket #67890" |
| Search tickets with query syntax | "Find all urgent tickets from last week" |
| Create a new ticket | "Create a high priority ticket for login issues" |
| Update ticket properties | "Set ticket #555 to solved status" |
| Add internal agent notes | "Add a private note about investigation progress" |
| Add public customer comments | "Reply to customer with solution steps" |
| Get incident tickets linked to problems | "Show incidents related to this problem ticket" |
Field & Brand Discovery
Tool | Description | Example Usage |
| List all ticket fields with IDs, types, and dropdown options | "What custom fields are available?" |
| Search tickets by field name (auto-resolves to ID) | "Find tickets where Product Area is billing" |
| List all Zendesk brands in the account | "What brands do we have?" |
| Search tickets by brand name | "Find open tickets for the uAttend brand" |
Analysis Tools
Tool | Description | Example Usage |
| Analyze up to 500 tickets with full comment history | "Analyze the last 30 days of Citadel tickets for root causes" |
| Sample N tickets per day for trend analysis | "Sample 25 tickets per day for 20 days from uAttend" |
Ticket Metrics & History
Tool | Description | Example Usage |
| Get timing metrics for one ticket (reply time, resolution time, reopens) | "How long did ticket #12345 take to resolve?" |
| Bulk metrics across all tickets, newest first (max 100/page) | "Pull metrics for the last 100 tickets" |
| Full field-level change history for a ticket | "Show me every change made to ticket #67890" |
| Cursor-based bulk export of tickets updated since a given time | "Export all tickets updated in the last 7 days" |
AI Agent Export Tools (requires ZENDESK_AI_EXPORT_TOKEN, ZENDESK_AI_EXPORT_ORG_ID, ZENDESK_AI_EXPORT_BOT_ID)
Tool | Description | Example Usage |
| Get signed download URLs for bot conversation exports for a given date | "Get export URLs for bot conversations on 2024-03-15" |
| Download and parse conversation records from a signed URL | "Fetch the conversations from this export URL" |
Data is available back to 2024-01-01. Files are generated once daily at midnight UTC — the most recent available date is yesterday. Signed URLs expire after 24 hours.
Requests go to
https://YOUR-SUBDOMAIN.zendesk.com/ai-agents/api/data-export/v3, soZENDESK_SUBDOMAINis required for these tools too. The legacy*.ultimate.aihosts were retired on 2026-09-15;ZENDESK_AI_EXPORT_REGIONis no longer used, as the endpoint is derived from your subdomain in every region.
Zendesk QA Tools (requires ZENDESK_QA_API_TOKEN)
Tool | Description | Example Usage |
| List all QA workspaces | "What QA workspaces do we have?" |
| List all QA users (account-wide) | "Show all QA users" |
| Get QA reviews (account-wide) | "Get all reviews from January 2024" |
| Get CSAT data (account-wide) | "Get CSAT scores for last month" |
| List all quizzes | "What quizzes are available?" |
| Get quiz leaderboard | "Show quiz leaderboard" |
| Get quiz statistics | "Get statistics for quiz #123" |
| Get quiz responses | "Get responses for quiz #123" |
| Search conversations by email | "Find conversations for john@example.com" |
| Get workspace users | "Get users in workspace #456" |
| Get workspace reviews | "Get reviews for workspace #456 from last month" |
| Get workspace CSAT | "Get CSAT for workspace #456" |
| Get workspace disputes | "Get disputes in workspace #456" |
| Get workspace scorecards | "Show scorecards for workspace #456" |
Workforce Management Tools (requires ZENDESK_WFM_API_TOKEN)
Tool | Description | Example Usage |
| Get WFM activities | "Show WFM activities for this week" |
| Get WFM report data | "Pull WFM report for last month" |
| Fetch agent shifts | "Get shifts for the support team" |
| Get time-off records | "Show time-off requests for this quarter" |
| Import time-off data | "Import time-off records" |
💬 Usage Examples
Once configured, you can use natural language with your AI assistant:
Ticket Management
"Show me all high priority tickets assigned to me"
"Create a new ticket: Customer can't access dashboard, priority urgent"
"Update ticket #12345 status to pending and add a note about waiting for customer response"Search & Discovery
"Find all solved tickets from this week tagged with 'billing'"
"Search for open tickets containing 'password reset'"
"Show me tickets created by john@company.com in the last 30 days"Customer Communication
"Add a public comment to ticket #789: 'We've identified the issue and working on a fix'"
"Add a private note: 'Customer confirmed the workaround is effective'"Advanced Queries
"Find all problem tickets that have linked incidents"
"Show me escalated tickets that haven't been updated in 2 days"
"Get details for ticket #456 including all comments and history"Brand & Field Analysis
"List all our Zendesk brands"
"Find open tickets for the Citadel brand"
"What custom fields do we have for tickets?"
"Search for tickets where Product Area is billing"Root Cause Analysis
"Analyze the last 30 days of uAttend tickets and identify common issues"
"Get 100 Citadel tickets from the past week with full conversation history"
"Sample 25 tickets per day from CloudPunch for the last 20 days - what trends do you see?"Ticket Metrics & History
"How long did ticket #12345 take to get a first reply?"
"Show me every status change on ticket #67890"
"Export all tickets updated since last Monday"AI Agent Conversations
"Get the bot conversation export URLs for March 15th"
"Download and summarize yesterday's bot conversation data"Zendesk QA Analysis
"List all QA workspaces"
"Get QA reviews from January 2024"
"Show CSAT scores for workspace #123 from last month"
"What disputes were filed in workspace #456 this quarter?"
"Get the quiz leaderboard"🔑 Authentication Setup
Standard Zendesk API Token
Log in to your Zendesk account
Go to Admin Center → Apps and integrations → APIs → Zendesk API
Click Add API token, add a description, click Create, and copy the token
Important: Save this token securely — you won't see it again
AI Agent Export Token
Go to Zendesk AI Agents settings
Navigate to Settings → API
Generate a new API token and note your Organization ID and Bot ID
Find Your Subdomain
Your Zendesk URL format: https://YOUR-SUBDOMAIN.zendesk.com
Use YOUR-SUBDOMAIN as the ZENDESK_SUBDOMAIN value.
Required Permissions
Ensure your Zendesk user account has:
Agent role (minimum)
Ticket access permissions
API access enabled
🔧 Development
Project Structure
zd-mcp-server/
├── src/
│ ├── index.ts # Server entry point
│ └── tools/
│ ├── index.ts # Core Zendesk tool implementations
│ ├── ticket-fields.ts # Field, brand, and analysis tools
│ ├── zendesk-qa.ts # Zendesk QA Export API tools
│ ├── zendesk-wfm.ts # Workforce Management tools
│ ├── zendesk-analytics.ts # Ticket metrics, audits, incremental export
│ └── zendesk-ai-export.ts # AI Agent conversation export
├── .github/
│ └── workflows/
│ └── publish.yml # Automated npm publishing on version tags
├── dist/ # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.mdBuilding from Source
git clone https://github.com/famousdrew/zd-mcp-server.git
cd zd-mcp-server
npm install
npm run buildRunning Locally
# Start the server
npm start
# Development mode with auto-rebuild
npm run devTesting
npx @modelcontextprotocol/inspector node dist/index.jsPublishing a New Version
Bump the version in package.json, then push a version tag:
git tag v0.6.0
git push origin v0.6.0GitHub Actions will build and publish to npm automatically.
🔍 Troubleshooting
Common Issues
❌ "Authentication failed" errors
Verify your API token is correct and hasn't expired
Ensure your email address matches your Zendesk account
Check that your subdomain is spelled correctly (no
.zendesk.comsuffix)
❌ "Permission denied" errors
Verify your Zendesk user has Agent permissions or higher
Ensure API access is enabled for your account
❌ "Server not found" errors
Ensure you've installed the package:
npm install -g zd-mcp-serverTry using npx instead:
npx zd-mcp-serverCheck that your MCP client configuration file syntax is correct
❌ "Environment variables not set" errors
Verify all three required variables are set:
ZENDESK_EMAIL,ZENDESK_TOKEN,ZENDESK_SUBDOMAINRestart your MCP client after setting environment variables
❌ AI Export errors
Confirm
ZENDESK_AI_EXPORT_TOKEN,ZENDESK_AI_EXPORT_ORG_ID, andZENDESK_AI_EXPORT_BOT_IDare all setExport files are only available for dates up to yesterday — today's data hasn't been generated yet
Signed URLs expire after 24 hours; request fresh ones if you get a 403
Log Files
Claude Desktop:
~/Library/Logs/Claude/(macOS) or%APPDATA%/Claude/logs/(Windows)Cursor: Check the output panel for MCP server logs
📚 Advanced Usage
Analysis Tool Parameters
zendesk_analyze_tickets
Parameter | Type | Default | Description |
| string | required | Brand to analyze (partial match) |
| number | 30 | Days to look back |
| number | 100 | Max tickets (up to 500) |
| string | all | Filter: open, pending, solved, closed |
| string | all | Filter: low, normal, high, urgent |
zendesk_sample_tickets
Parameter | Type | Default | Description |
| string | required | Brand to sample (partial match) |
| number | 20 | Days to look back |
| number | 25 | Tickets per day (up to 50) |
| string | all | Filter: open, pending, solved, closed |
| string | all | Filter: low, normal, high, urgent |
| boolean | true | Include full comment history |
zendesk_incremental_tickets
Parameter | Type | Default | Description |
| number | 30 days ago | Unix timestamp to start from |
| string | — | Pagination cursor from a previous response's |
Search Query Syntax
# Status-based searches
status:open status:pending status:solved
# Priority searches
priority:urgent priority:high priority:normal priority:low
# Date-based searches
created>2024-01-01 updated<2024-01-31
# Tag searches
tags:billing tags:technical-issue
# Requester searches
requester:customer@company.com
# Complex combinations
status:open priority:high created>2024-01-01 tags:billing🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes
Push to the branch and open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🔗 Links
Zendesk API Docs: https://developer.zendesk.com/api-reference/
Model Context Protocol: https://modelcontextprotocol.io/
🆘 Support
Issues: GitHub Issues
Zendesk API: Zendesk Developer Documentation
MCP Protocol: MCP Documentation
Made with ❤️ for the MCP and Zendesk communities
Available Tools
41 toolszendesk_add_private_noteC
Add a private internal note to a Zendesk ticket
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket to add a note to | |
| note | Yes | The content of the private note |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description fails to disclose behavioral traits such as permissions required, side effects, constraints (e.g., ticket status), or whether the note is appended. It only states the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, concise and front-loaded. However, it may be too terse, sacrificing completeness for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, no output schema, no annotations), the description provides the core purpose but lacks context about ticket state requirements, visibility, or usage notes. It is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no additional meaning beyond the schema, which already provides descriptions for both parameters. No extra context is given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (add) and the resource (private internal note to a Zendesk ticket). It implicitly distinguishes from the sibling 'zendesk_add_public_note' by specifying 'private', but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternatives like public note or update ticket. The description lacks context on appropriate scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_add_public_noteB
Add a public comment to a Zendesk ticket
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket to add a comment to | |
| comment | Yes | The content of the public comment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It fails to mention side effects, permissions, or whether comments are appended. The description is too minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. However, it could be slightly expanded to include key context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple operation and no output schema, the description is adequate but lacks mention of return values or error conditions, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already well-defined. The description adds no extra meaning beyond the schema, resulting in a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Add' and the resource 'public comment to a Zendesk ticket', distinguishing it from the sibling 'zendesk_add_private_note'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'zendesk_add_private_note' or prerequisites such as ticket existence. Usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_ai_export_fetch_conversationsA
Download and parse conversation data from a signed URL returned by zendesk_ai_export_get_signed_urls. Returns an array of conversation records. Each record includes conversation ID, timestamps, channel, resolution status, and knowledge metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| signed_url | Yes | A signed URL from zendesk_ai_export_get_signed_urls. Must be used within its TTL window. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses that it downloads and parses data, returns an array, and lists record fields. It also mentions the TTL constraint. No side effects are indicated, which is acceptable for a read-like operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: first states the main action, second describes return type, third details record contents. No fluff, every sentence earns its place. Well front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately explains the return format. It covers input provenance and constraints. Could mention error handling or pagination, but for a simple single-param tool, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The parameter description in the schema already covers origin and TTL; the description restates this without adding new semantic details. No additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool downloads and parses conversation data from a signed URL, mentioning specific output fields (conversation ID, timestamps, etc.). It distinguishes itself from siblings by explicitly referencing the complementary tool zendesk_ai_export_get_signed_urls.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates this tool must be used after obtaining a signed URL from zendesk_ai_export_get_signed_urls and within its TTL window. Although no explicit when-not-to-use or alternatives are given, the context is clear and the constraint is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_ai_export_get_signed_urlsA
Get signed download URLs for Zendesk AI Agent bot conversation exports for a specific date. Files contain one conversation record per line (NDJSON). URLs expire after 24 hours. Data is available back to 2024-01-01. Files are generated once daily at midnight UTC, so the most recent available date is yesterday.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date to export in YYYY-MM-DD format. Returns conversations that ended on this date. | |
| ttl | No | Custom TTL in minutes for signed URL validity. Defaults to 1440 (24 hours). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses important behaviors: files are NDJSON, URLs expire in 24 hours, data available since 2024-01-01, and files generated daily at midnight. It does not disclose authentication or rate limits, but for a simple URL retrieval tool, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, all relevant and front-loaded with the purpose. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description explains the return type (signed URLs) and key properties (expiration, format). It does not specify response structure (e.g., array vs single URL) but is largely complete for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds context about the schedule (daily at midnight) which relates to the 'date' parameter, but does not add significant new meaning beyond the schema's own descriptions. The ttl parameter's default (24h) is reinforced by the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get signed download URLs for Zendesk AI Agent bot conversation exports for a specific date.' This is a specific verb+resource, and it distinguishes itself from siblings like 'zendesk_ai_export_fetch_conversations' which likely fetches conversations directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context about data availability (back to 2024-01-01, latest yesterday) but does not explicitly state when to use this tool versus alternatives like other export or fetch tools. No when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_analyze_ticketsA
Analyze tickets for a brand over a time period. Fetches full ticket details including all comments for root cause analysis. Returns summary statistics and complete ticket data.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_name | Yes | Brand name to analyze tickets for (case-insensitive partial match) | |
| days_back | No | Number of days to look back (default: 30) | |
| max_tickets | No | Maximum tickets to analyze, up to 500 (default: 100) | |
| status | No | Filter by status (open, pending, solved, closed) | |
| priority | No | Filter by priority (low, normal, high, urgent) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description clearly states it fetches full ticket details including all comments and returns summary statistics and complete ticket data. This sufficiently discloses the read-only nature and scope of data retrieval. No annotations contradict this.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences that front-load the purpose and immediately state what the tool does and returns, with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, no output schema, no annotations), the description covers the tool's purpose and data retrieval but lacks details about the output format (what summary statistics are returned) and any potential limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description adds context about analysis purpose but does not enhance parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes tickets for a brand over a time period, fetching full details and comments for root cause analysis, and returns summary statistics and complete data. This is specific and distinguishes it from sibling tools like single-ticket retrieval or search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a use case (root cause analysis) but provides no explicit guidance on when to use this tool versus alternatives. Sibling tools exist for different purposes, but no when-to-use or when-not-to-use information is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_create_ticketB
Create a new Zendesk ticket
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | The subject of the ticket | |
| description | Yes | The initial description or comment for the ticket | |
| priority | No | The priority of the ticket | |
| status | No | The status of the ticket | |
| type | No | The type of the ticket | |
| tags | No | Tags to add to the ticket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states the action. Does not disclose that it is a write operation, requires authentication, or may have rate limits. The description is too minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no waste. It is front-loaded and directly conveys the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain return values, error behavior, or optional versus required fields beyond what schema provides.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no extra parameter meaning beyond the schema's own descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new Zendesk ticket' clearly states the verb (create) and resource (ticket), distinguishing it from sibling tools like update_ticket or get_ticket.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as zendesk_update_ticket. Lacks context of prerequisites or constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_get_linked_incidentsA
Fetch all incident tickets linked to a particular ticket
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket to retrieve linked incidents for |
TDQS
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 basic action without mentioning authentication, rate limits, whether the operation is read-only, or what constitutes 'linked'. The description is too sparse to inform safe and effective use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, efficiently conveying the tool's purpose without any wasted text. It is appropriately sized for a simple retrieval tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no output schema, no annotations), the description is nearly complete. It covers what the tool does, but lacks details on pagination or result limits. However, for a straightforward fetch, it is largely adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a clear parameter description for ticket_id. The tool description adds meaningful context by specifying that it retrieves 'linked incidents', which goes beyond the schema's scope. The combination is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch' and the resource 'all incident tickets linked to a particular ticket', making the tool's purpose obvious. It distinguishes from sibling tools like get_ticket or search by specifying a unique relationship.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving linked incident tickets but provides no explicit guidance on when to use this tool versus alternatives like zendesk_get_ticket or zendesk_search. No when-not-to-use or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_get_ticketC
Get a Zendesk ticket by ID
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. It only states the basic function without mentioning any behavioral traits like return format, required permissions, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: 'Get a Zendesk ticket by ID' is front-loaded and contains no unnecessary words or details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool, the description is incomplete. It lacks information about the response structure, which is not covered by an output schema, and does not differentiate from similar sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has only one parameter with a description, achieving 100% coverage. The description does not add extra meaning beyond what the schema already provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get) and resource (a Zendesk ticket by ID). However, among many sibling tools like 'get_ticket_details', 'get_ticket_audits', it does not differentiate what this specific tool returns versus those.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool over alternatives like 'get_ticket_details' or 'get_ticket_metrics'. The context of use 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.
zendesk_get_ticket_auditsA
Get the full field-level change history for a ticket. Each audit entry records what changed (status, assignee, tags, custom fields, etc.), who made the change, and when. Useful for tracing how a ticket evolved over its lifetime.
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosure. It specifies that each audit entry records what changed, who made the change, and when, giving a good sense of the read-only nature and output structure. It does not mention limits or edge cases, but the coverage is sufficient for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no extraneous information, front-loading the primary action and purpose. Every sentence adds value, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one required parameter, no output schema), the description adequately explains the return content (change entries with who and when). It does not detail pagination or ordering, but the use case for tracing history is well addressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter ticket_id with description 'The ID of the ticket' (100% coverage). The description does not add further context about the parameter format or constraints beyond what the schema provides, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the full field-level change history for a ticket, using a specific verb and resource. It distinguishes itself from sibling tools like zendesk_get_ticket (current state) and zendesk_get_ticket_metrics (metrics) by focusing on historical changes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by stating the tool is 'useful for tracing how a ticket evolved over its lifetime.' However, it does not explicitly exclude alternative tools or provide when-not-to-use guidance, though the use case is well implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_get_ticket_detailsC
Get detailed information about a Zendesk ticket including comments
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket to retrieve details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only states that the tool returns details including comments, but does not mention read-only nature, rate limits, or any side effects. This is insufficient for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is clear and front-loaded. It could be slightly expanded to include more useful context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no output schema, no annotations), the description is incomplete. It does not specify what 'detailed information' includes beyond comments, such as status, priority, attachments, etc. More detail would aid accurate invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for the single parameter 'ticket_id'. The tool description adds no extra meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed information about a Zendesk ticket including comments. It uses a specific verb and resource, but does not differentiate itself from the sibling tool 'zendesk_get_ticket', which may have similar functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like 'zendesk_get_ticket' or others. No use cases, prerequisites, or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_get_ticket_metricsA
Get timing and performance metrics for a specific ticket: first reply time, full resolution time, agent wait time, requester wait time, reopens count, replies count, and first assignee timestamps.
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes a read-only operation without destructive behavior, but does not add details beyond the obvious (e.g., required permissions, error handling).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main action and lists key metrics. Every part adds value with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no output schema) and lack of annotations, the description adequately specifies what metrics are returned. It could mention it is read-only or requires a valid ticket, but is sufficient for most use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100% for the single parameter (ticket_id). The tool description does not add additional meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves timing and performance metrics for a specific ticket, listing specific metrics. It distinguishes from sibling tools like zendesk_get_ticket (general ticket info) and zendesk_list_ticket_metrics (likely multiple tickets).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing performance metrics for a single ticket, but does not explicitly state when to use this tool vs alternatives or provide any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_incremental_ticketsA
Efficiently export tickets updated since a given time using cursor-based pagination. Returns up to 1000 tickets per page plus an after_cursor for the next page. Use start_time on the first call; pass after_cursor on subsequent calls to paginate. Best for bulk data pulls and keeping a local dataset in sync.
| Name | Required | Description | Default |
|---|---|---|---|
| start_time | No | Unix timestamp to start from. Defaults to 30 days ago. Must be at least 1 minute in the past. | |
| cursor | No | Pagination cursor from the after_cursor field of a previous response. When provided, start_time is ignored. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses that it returns up to 1000 tickets per page and includes an after_cursor for pagination. It doesn't mention any error conditions or limits, but for a read-only incremental export, the behavior is well-described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, each serving a distinct purpose: defining the tool, specifying output and pagination, and guiding usage. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all necessary aspects: purpose, pagination mechanism, output structure (1000 tickets per page + cursor), and typical use cases. Without an output schema, it adequately explains what the tool returns and how to paginate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds significant value by explaining the default for start_time (30 days ago), the requirement for it to be at least 1 minute in the past, and that cursor overrides start_time. This goes beyond the schema's basic descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the tool's purpose: exporting tickets updated since a given time using cursor-based pagination. It uses specific verbs ('export') and resource ('tickets'), and distinguishes it from sibling tools like zendesk_search or zendesk_get_ticket by focusing on incremental bulk exports.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states it's best for bulk data pulls and syncing local datasets. It provides explicit instructions for pagination: use start_time on first call and after_cursor on subsequent calls. However, it doesn't explicitly say when not to use it or mention alternatives, which is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_list_brandsA
List all Zendesk brands in the account with their IDs and search syntax.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the output (IDs and search syntax) but lacks details on side effects, authentication needs, rate limits, or data volume. Since no annotations are present, the description could be more explicit about the read-only nature and any limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently conveys the tool's purpose and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with no output schema and no annotations, the description provides sufficient information about what the tool does and what it returns. It could be enhanced by noting that it returns all brands or any pagination behavior, but it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema description coverage is 100%. The description adds value by specifying what the output contains ('IDs and search syntax'), which indirectly helps the agent understand the tool's behavior even without parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List all Zendesk brands in the account with their IDs and search syntax.' It uses a specific verb and resource, and distinguishes this tool from siblings like zendesk_search_by_brand by focusing on listing brands rather than searching within them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance is provided. The tool's simplicity implies its usage, but compared to other Zendesk tools, no direction is given on when to choose this over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_list_ticket_fieldsA
List all ticket fields (system and custom) with their IDs, types, and dropdown options. Useful for discovering field IDs needed for search queries.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default: 1) | |
| per_page | No | Results per page, max 100 (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears the full burden of behavioral disclosure. It correctly states that the tool lists all fields including system and custom, and returns IDs, types, and dropdown options. Though it does not mention pagination behavior or absence of side effects, listing is inherently read-only and the description covers the essential output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no extraneous words. The first sentence states purpose and output, the second gives a use case. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is no output schema, the description should clarify return structure. It mentions IDs, types, and dropdown options, which covers the core response. It does not describe pagination metadata (e.g., total count, next page), but for a list tool the description is reasonably complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for both parameters (page, per_page). The description does not add extra meaning beyond the schema, which already describes them. Baseline score of 3 is appropriate since the schema fully documents the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's action ('list'), resource ('all ticket fields (system and custom)'), and specifies the output details (IDs, types, dropdown options). It states a concrete use case ('discovering field IDs needed for search queries'), which differentiates it from other tools in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage context: 'Useful for discovering field IDs needed for search queries.' This gives agents a specific scenario for when to call this tool. However, it does not explicitly mention when not to use it or compare it to alternatives, though no direct alternatives exist among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_list_ticket_metricsA
List ticket metrics across all tickets (newest first, max 100 per page). Useful for bulk performance analysis — response times, reopens, reply counts.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default: 1) | |
| per_page | No | Results per page, max 100 (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses pagination (max 100 per page) and ordering. However, it doesn't mention that it is read-only, any rate limits, or what data points are included beyond a brief list. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, two sentences with no filler. Front-loaded with the action and key constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description could explain what the response contains (e.g., fields of each metric). It mentions 'response times, reopens, reply counts' but does not specify the exact structure. Adequate for a paginated list but leaves some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The description reinforces the max 100 per page limit but does not add new semantic meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'List', resource 'ticket metrics', scope 'across all tickets', and ordering 'newest first'. Distinguishes from sibling 'zendesk_get_ticket_metrics' which is for a single ticket.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly mentions 'Useful for bulk performance analysis', providing context for when to use. Does not state when not to use or alternatives, but the purpose is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_get_csatC
Get CSAT data (account-wide) within a date range. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| fromDate | Yes | Start date in ISO format (required) | |
| toDate | No | End date in ISO format | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description only mentions a required API token but does not disclose whether the tool is read-only, rate limits, pagination behavior, or error handling. Without annotations, the description carries full burden but falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core purpose. It has no unnecessary words, though it could be expanded slightly to improve completeness without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, so the description should explain what the tool returns (e.g., CSAT scores, response format). It does not, leaving the agent uncertain about the response structure. Also lacks details on date format assumptions or pagination behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with all parameters described in the input schema. The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('CSAT data'), and the scope ('account-wide') with a date range constraint. It implicitly differentiates from sibling tool 'zendesk_qa_workspace_csat' by specifying account-wide vs workspace-level, though not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., workspace_csat). No mention of when not to use it or prerequisites beyond the API token.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_get_quiz_leaderboardB
Get the Zendesk QA quiz leaderboard. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the requirement of an API token, which is a behavioral requirement, but does not disclose any side effects, data scope, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences. Every part is necessary: the action and resource, and the authentication requirement. No fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has no parameters and no output schema, the description is minimally adequate. However, it would benefit from additional context about what the leaderboard includes (e.g., scoring criteria, time period) to help the agent understand the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema covers all inputs trivially. Per the rules, a baseline of 4 is appropriate. The description adds no parameter information, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'Zendesk QA quiz leaderboard', making the purpose clear. However, it does not differentiate from sibling tools like 'zendesk_qa_get_quiz_overview', which is a closely related resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternatives such as 'zendesk_qa_get_quiz_overview' or 'zendesk_qa_get_quiz_responses'. The only context is the authentication requirement (API token), which is not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_get_quiz_overviewB
Get a Zendesk QA quiz overview with statistics. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| quizId | Yes | The ID of the quiz |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It fails to disclose side effects, rate limits, or read-only nature. The description is minimal and does not add context beyond the basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of one sentence and a prerequisite. Every word earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no output schema, no annotations), the description is minimally adequate. It explains what the tool does and what is required, but lacks details on the response format or how to obtain the quizId.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (quizId is described as 'The ID of the quiz'), so the description adds no additional meaning. Baseline score of 3 is appropriate as the schema already covers the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get) and resource (Zendesk QA quiz overview with statistics), which distinguishes it from siblings like get_quiz_leaderboard or get_quiz_responses. However, it lacks specificity on what statistics are included.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the prerequisite (API token) but provides no guidance on when to use this tool versus alternatives like get_quiz_leaderboard or get_quiz_responses. No context on typical use cases or limits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_get_quiz_responsesA
Get responses for a Zendesk QA quiz. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| quizId | Yes | The ID of the quiz |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It only states 'Get responses' without explaining return format, pagination, error handling, or safety (read-only assumption). Insufficient beyond schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences, no filler, front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 param, no output schema, no nested objects), the description is nearly complete. Could mention response format, but not critical for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter (quizId) described as 'The ID of the quiz'. The description adds no extra meaning beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (Get) and resource (responses for a Zendesk QA quiz). Distinct from sibling tools like zendesk_qa_list_quizzes or zendesk_qa_get_quiz_overview.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Mentions a required authentication token but does not specify when to use this tool versus alternatives like get_quiz_overview or list_quizzes. No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_get_reviewsA
Get QA reviews (account-wide) within a date range. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| fromDate | Yes | Start date in ISO format (required) | |
| toDate | No | End date in ISO format | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
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 required API token, but lacks details on whether the tool is read-only, rate limits, or behavior for large date ranges. The action 'Get' implies read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that includes both purpose and an authentication requirement with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, and the description does not explain the return format, error handling, or limits on the date range. It is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description adds minimal value beyond the schema, only hinting at date range filtering. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets QA reviews account-wide within a date range. It distinguishes from sibling tools like zendesk_qa_workspace_reviews (which are workspace-specific) and zendesk_qa_get_csat (different metric).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for account-wide reviews but does not explicitly state when to use this tool versus alternatives. No exclusions or when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_list_quizzesA
List all Zendesk QA quizzes. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description reveals a prerequisite (API token) but does not explicitly state read-only behavior or other traits beyond listing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and add a critical prerequisite, with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with no parameters and no output schema, the description adequately states purpose and a key prerequisite, though it could mention return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so baseline 3 applies. The description adds no additional parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and resource 'Zendesk QA quizzes', clearly distinguishing it from sibling tools like zendesk_qa_list_users and zendesk_qa_list_workspaces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the required API token but does not provide explicit guidance on when to use this tool versus alternatives or exclusion scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_list_usersA
List all Zendesk QA users (account-wide). Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states auth requirement. Fails to disclose read-only nature, pagination, or error behavior, leaving agent uninformed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no superfluous information. Front-loaded with action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple list with no parameters, but lacks output schema and description of return format, which limits agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters present; schema coverage is 100%. Description adds no param info but baseline for 0 params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'List', resource 'all Zendesk QA users', and scope 'account-wide'. Distinguishes from sibling tools like zendesk_qa_list_workspaces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Mentions required API token but does not explicitly state when to use vs alternatives like zendesk_qa_workspace_users. Context is implied but not directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_list_workspacesA
List all Zendesk QA workspaces. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits beyond listing workspaces. For a simple read operation, this is acceptable but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous information, efficiently conveying purpose and a prerequisite.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should explain what the tool returns. It does not specify the fields or format of the workspace list, leaving the agent uninformed about the response structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and schema coverage is 100% (vacuously). The baseline for zero parameters is 4, and the description does not need to add parameter info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List all Zendesk QA workspaces,' which is a specific verb and resource. It distinguishes from sibling tools that focus on tickets, quizzes, reviews, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the required authentication token but does not provide guidance on when to use this tool versus alternatives. However, the name and purpose are self-explanatory.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_search_conversationsB
Search Zendesk QA conversations by email address. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Email address to search for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the token requirement, the description reveals no behavioral traits like read-only nature, rate limits, pagination, or error handling. With no annotations, more disclosure is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences with no filler. The purpose and a key requirement are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity (1 param, no output schema), the description is minimal but adequate. However, it lacks details on what the search returns (conversation summaries, etc.) and how to use the results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers the only parameter (email) with a description that matches the tool description. Since schema coverage is 100%, the description adds no new semantics beyond repeating the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states action (search), resource (Zendesk QA conversations), and criterion (by email address). This specificity differentiates it from sibling tools like zendesk_qa_get_reviews or general zendesk_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as zendesk_search or other QA tools. The description does not provide exclusionary context or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_workspace_csatA
Get CSAT data for a specific Zendesk QA workspace within a date range. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| workspaceId | Yes | The ID of the workspace | |
| fromDate | Yes | Start date in ISO format (required) | |
| toDate | No | End date in ISO format | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
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 indicates a read operation ('Get') and an auth requirement, but does not disclose whether the operation is non-destructive, rate limits, or other behavioral traits like pagination handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and an important prerequisite. Every sentence is necessary and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter tool with no output schema or annotations, the description covers core purpose and auth but lacks details on pagination, the optional nature of toDate, and return format. The schema compensates somewhat, but the description could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage, so baseline is 3. The description adds context by linking 'date range' to the fromDate and toDate parameters, but does not provide additional meaning beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves CSAT data for a specific workspace within a date range, using a specific verb and resource. It distinguishes from sibling 'zendesk_qa_get_csat' by specifying workspace and date range scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions an API token requirement but provides no guidance on when to use this tool versus alternatives like other CSAT or QA tools. No explicit when-to-use or when-not-to-use information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_workspace_disputesA
Get disputes for a specific Zendesk QA workspace within a date range. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| workspaceId | Yes | The ID of the workspace | |
| fromDate | Yes | Start date in ISO format (required) | |
| toDate | No | End date in ISO format | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
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 states the operation is a read (get) and requires an API token, but it does not explicitly disclose idempotency, side effects, or safety. The agent can infer it is read-only, but additional behavioral details (e.g., pagination behavior) 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, no wasted words. The most important information (purpose and requirement) is front-loaded. It is optimally sized for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters and no output schema, the description covers the essential aspects: what it does, what it requires (API token), and the key parameters (date range). It does not explain pagination or return structure, but for a basic read operation, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no new meaning beyond the schema; it mentions 'date range' which aligns with fromDate and toDate parameters but does not provide formatting or constraints beyond what the schema already describes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get disputes for a specific Zendesk QA workspace within a date range.' It uses a specific verb ('get') and resource ('disputes for a Zendesk QA workspace'), and the scope is defined. This distinguishes it from sibling tools like zendesk_qa_workspace_reviews or zendesk_qa_workspace_scorecards.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite ('Requires ZENDESK_QA_API_TOKEN') but does not provide explicit guidance on when to use this tool vs alternatives, nor does it state when not to use it. The context is clear, but there is no exclusion or comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_workspace_reviewsB
Get reviews for a specific Zendesk QA workspace within a date range. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| workspaceId | Yes | The ID of the workspace | |
| fromDate | Yes | Start date in ISO format (required) | |
| toDate | No | End date in ISO format | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears full responsibility for behavioral disclosure. It mentions the authentication requirement (ZENDESK_QA_API_TOKEN) but does not state that it is non-destructive, describe pagination behavior, or warn about rate limits or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with an essential authentication note. It is front-loaded and efficient, containing no extraneous information. However, it could be slightly improved by briefly noting pagination support.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of 5 parameters, pagination, and no output schema, the description is too brief. It does not explain the return format, pagination behavior, or error conditions, leaving the agent with insufficient context for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 5 parameters are described in the input schema (100% coverage), so the baseline is 3. The tool description adds no extra meaning beyond the schema; it does not explain parameter interactions or provide examples. Thus, no increase above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves reviews for a specific Zendesk QA workspace within a date range. The verb 'Get' and resource 'reviews for a specific Zendesk QA workspace' are specific, and the mention of date range distinguishes it from similar sibling tools like zendesk_qa_get_reviews.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for fetching reviews for a workspace in a date range but does not provide explicit when-to-use or when-not-to-use guidance compared to alternatives. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_workspace_scorecardsB
Get scorecards for a specific Zendesk QA workspace. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| workspaceId | Yes | The ID of the workspace |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only mentions token requirement but not whether the operation is read-only, what happens on invalid workspace ID, or any rate limits. This is insufficient for an AI agent to understand side effects or safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two efficient sentences with no wasted words. The main purpose is front-loaded, and the authentication requirement is added as a separate sentence. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (1 parameter, no output schema). The description covers the basic purpose and auth. However, it does not describe the return format or what 'scorecards' contain, which would be helpful since no output schema exists. Still, it meets minimum viability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the only parameter, workspaceId, has a description). The tool description adds nothing beyond the schema for parameter semantics, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (Get) and resource (scorecards) with a clear scope (specific Zendesk QA workspace). It differentiates from sibling tools like zendesk_qa_workspace_csat or zendesk_qa_workspace_reviews, which fetch different resources for the same workspace.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only mentions an authentication requirement (ZENDESK_QA_API_TOKEN) but provides no guidance on when to use this tool versus alternatives like zendesk_qa_get_reviews or zendesk_qa_get_csat. There is no mention of prerequisites, context, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_qa_workspace_usersA
Get users for a specific Zendesk QA workspace. Requires ZENDESK_QA_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| workspaceId | Yes | The ID of the workspace |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description adds the token requirement, which is a behavioral detail. However, it does not disclose pagination, response format, or any side effects, leaving some transparency gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the core purpose, and contains no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one parameter and no output schema, the description covers purpose and a key prerequisite. It is mostly complete, though lacking output details, but acceptable given simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter workspaceId, which is described in the schema. The tool description adds no extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb 'Get' and the resource 'users' scoped to a specific Zendesk QA workspace, clearly distinguishing it from sibling tools like zendesk_qa_list_users (all users) or zendesk_qa_list_workspaces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite (requires ZENDESK_QA_API_TOKEN) but provides no guidance on when to use this tool versus alternatives like zendesk_qa_list_users, nor does it specify any exclusions or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_sample_ticketsA
Sample N tickets per day over X days for trend analysis. Returns tickets grouped by day with daily volume breakdown. Useful for identifying patterns and trends over time without one busy day dominating the data.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_name | Yes | Brand name to sample tickets for (case-insensitive partial match) | |
| days_back | No | Number of days to look back (default: 20) | |
| tickets_per_day | No | Number of tickets to sample per day, up to 50 (default: 25) | |
| status | No | Filter by status (open, pending, solved, closed) | |
| priority | No | Filter by priority (low, normal, high, urgent) | |
| include_comments | No | Include full comment history (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. While it mentions sampling and grouping, it does not disclose whether the tool is read-only, how sampling is done (random?), or any rate limits. This lack of transparency could mislead an agent about 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each adding value. It starts with the core action, then the return format, then the use case. No redundant or unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters fully documented in schema and no output schema, the description explains the tool's purpose and when to use. It could be more complete by specifying the output structure (e.g., array of objects with date and count), but it is adequate for most purposes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains each parameter. The description adds context like 'sample N tickets per day' but does not add significant meaning beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'sample' and the resource 'tickets' with a specific use case: trend analysis over time. It distinguishes from siblings like zendesk_analyze_tickets and zendesk_search by emphasizing sampling for patterns without one busy day dominating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use: for identifying patterns and trends without bias. However, it does not explicitly mention when not to use or list alternative tools like zendesk_search for exact queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_searchB
Search for Zendesk tickets based on a query
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (e.g., 'status:open', 'priority:urgent', 'tags:need_help') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose all behavioral traits. It only says 'Search for Zendesk tickets' without clarifying output format, pagination, rate limits, or whether it is read-only. This is insufficient for an agent to understand 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that clearly conveys the tool's purpose with no wasted words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool being simple with one parameter and no output schema, the description lacks critical context such as what the search returns (full tickets or summaries), pagination behavior, or any limitations. This leaves the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter. The description adds value by providing example query syntax (e.g., 'status:open', 'tags:need_help'), which enhances understanding beyond the schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches for Zendesk tickets based on a query, but it does not distinguish this from sibling tools like zendesk_search_by_brand and zendesk_search_by_field which have similar purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternatives, such as zendesk_search_by_brand or zendesk_get_ticket. The description simply states what it does without context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_search_by_brandA
Search tickets by brand name. Automatically resolves brand names to IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| brand_name | Yes | Brand name to search by (case-insensitive partial match) | |
| status | No | Filter by status (open, pending, solved, closed) | |
| priority | No | Filter by priority (low, normal, high, urgent) | |
| created_after | No | Filter tickets created after this date (ISO format) | |
| created_before | No | Filter tickets created before this date (ISO format) | |
| max_results | No | Maximum results to return (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses automatic brand name resolution but does not mention read-only nature, pagination, or other behavioral traits. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences, no wasted words. Front-loaded with purpose and key unique feature.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 6 parameters and no output schema, the description is too brief. It does not explain return format, pagination, or limits. Incomplete for a search tool with multiple filters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds context only for brand_name (auto-resolve). Other parameters are already well-described in schema. No significant added meaning beyond what schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Search tickets by brand name' with a specific verb and resource, and adds the distinguishing feature of automatic brand name-to-ID resolution. It differentiates well from sibling tools like zendesk_search and zendesk_search_by_field.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance. The description implies usage when you have a brand name, but does not compare with alternatives such as zendesk_search or zendesk_search_by_field. Basic implicit guidance only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_search_by_fieldA
Search tickets by custom field name and value. Automatically resolves field names to IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| field_name | Yes | Field name/title to search by (case-insensitive partial match) | |
| field_value | Yes | Value to match | |
| status | No | Filter by status (open, pending, solved, closed) | |
| priority | No | Filter by priority (low, normal, high, urgent) | |
| created_after | No | Filter tickets created after this date (ISO format) | |
| created_before | No | Filter tickets created before this date (ISO format) | |
| max_results | No | Maximum results to return (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry full behavioral disclosure. It only mentions automatic field name resolution, lacking details on read-only nature, error handling, pagination, or rate limits. This is minimal for a search tool with multiple parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading purpose and key behavior. Every sentence provides value with no redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given seven parameters and no output schema, the description does not cover return value behavior, sorting, or pagination. The automatic resolution note helps but leaves gaps in completeness for a moderately complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are well-documented there. The description adds no extra semantic value beyond summarizing the required parameters. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches tickets by custom field name and value, and automatically resolves field names to IDs. This verb+resource combination distinguishes it from siblings like zendesk_search (general search) and zendesk_search_by_brand (search by brand).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when searching by custom field, but does not explicitly state when to use this tool vs alternatives like zendesk_search or zendesk_search_by_brand. No 'when not' guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_update_ticketB
Update a Zendesk ticket's properties
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | The ID of the ticket to update | |
| subject | No | The new subject of the ticket | |
| status | No | The new status of the ticket | |
| priority | No | The new priority of the ticket | |
| type | No | The new type of the ticket | |
| assignee_id | No | The ID of the agent to assign the ticket to | |
| tags | No | Tags to set on the ticket (replaces existing tags) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must fully disclose behavioral traits. It fails to mention critical details like whether updates are partial or replace values, required permissions, idempotency, or side effects (e.g., notifications).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence with no wasted words. All content is relevant and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 7 parameters and no output schema, the description provides no information about return values, partial update behavior, or restrictions. It is inadequate for a mutation tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no meaning beyond the schema's parameter descriptions. It simply restates 'update properties' without elaborating on how parameters interact (e.g., tags replace existing tags). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update a Zendesk ticket's properties' uses a specific verb ('Update') and resource ('ticket properties'), clearly distinguishing it from sibling tools like 'zendesk_create_ticket' and 'zendesk_get_ticket'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives (e.g., adding notes via 'zendesk_add_public_note'). Usage is implied by the name and context, but the description lacks exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_fetch_shiftsA
Fetch WFM shifts for specified agents within a date range. Supports filtering by publication status and pagination. Requires ZENDESK_WFM_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| agentIds | Yes | Array of agent IDs to fetch shifts for | |
| startDate | Yes | Start date in ISO format (required) | |
| endDate | Yes | End date in ISO format (required) | |
| orderBy | No | Field to order results by | |
| orderDirection | No | Order direction | |
| published | No | Filter by publication status | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses the required API token, but does not detail other behavioral traits like whether it modifies data, rate limits, or error behavior. For a fetch tool, this 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no wasted words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description covers purpose and auth but lacks details on return format, error handling, or expected behavior. Partially complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions, so baseline is 3. The description adds little beyond restating the filtering and pagination support, not deeper semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches WFM shifts for specified agents within a date range, with filtering and pagination. It distinguishes from sibling WFM tools like get_activities or get_report_data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells when to use (fetch shifts for agents) and mentions supported features, but does not explicitly state when not to use or provide alternatives. However, the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_get_activitiesA
Get WFM activities starting from a Unix timestamp. Returns up to 1000 records per request. Use the startTime of the last activity to paginate. Requires ZENDESK_WFM_API_TOKEN or ZENDESK_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| startTime | Yes | Unix timestamp (seconds) to start retrieving activities from (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses record limit (1000), pagination method (using startTime of last activity), and authentication requirements. No annotations are provided, so the description adequately covers behavioral expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each serving a distinct purpose: action, limits, pagination, and authentication. No redundant or missing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Sufficient for a simple tool with one parameter and no output schema. Covers purpose, pagination, and auth. Could mention error handling but not required for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds meaningful context beyond the schema by explaining how startTime is used for pagination. Schema coverage is 100%, so baseline 3; the pagination guidance raises it to 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves WFM activities starting from a Unix timestamp, with pagination details. It distinguishes from sibling tools that deal with shifts, reports, or time off.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Includes pagination instructions and required authentication tokens. Does not explicitly state when to use this tool versus alternatives, but the scope of activities is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_get_report_dataB
Get WFM report data for a specified template and time range. Requires ZENDESK_WFM_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| templateId | Yes | The ID of the report template | |
| startTime | Yes | Start time in ISO format (required) | |
| endTime | Yes | End time in ISO format (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It only states the tool gets data and requires an API token. No disclosure of side effects, rate limits, data volume, or whether it supports pagination. For a data retrieval 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. Front-loaded with purpose and parameters, followed by a requirement statement. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description fails to describe the return value format for report data. Also missing details on pagination, error handling, or data limits. For a complex tool with three required parameters, more completeness is expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all three parameters (templateId, startTime, endTime). The description adds no additional meaning beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Get WFM report data for a specified template and time range,' using a specific verb and resource. It distinguishes this tool from sibling WFM tools like 'get_activities' or 'fetch_shifts' by focusing on report data with template and time range constraints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description mentions the requirement of ZENDESK_WFM_API_TOKEN, but provides no guidance on when to use this tool versus alternatives like zendesk_wfm_get_activities. No explicit when-to-use or when-not-to-use context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_get_time_offB
Get WFM time off requests with optional filters (agent, status, reason, type, time range). Requires ZENDESK_WFM_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| agentId | No | Filter by agent ID | |
| status | No | Filter by status (e.g., pending, approved, rejected) | |
| reason | No | Filter by reason | |
| type | No | Filter by type | |
| startTime | No | Filter by start time (ISO format) | |
| endTime | No | Filter by end time (ISO format) | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must communicate behavior. It mentions the requirement of an API token but does not disclose pagination, result limits, sorting, or response structure. The presence of page/pageSize parameters in the schema is not explained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no extraneous information. It front-loads the core purpose and adds a necessary authentication note concisely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is brief and covers the basic functionality but lacks details on output format, pagination behavior, and any prerequisites beyond the token. Given the tool's complexity (8 optional params, no output schema), more context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all parameters with descriptions, so the description adds minimal value beyond listing filter categories. With 100% schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves WFM time off requests and lists the filter types. However, it does not differentiate from the sibling tool zendesk_wfm_get_time_off_v2, which likely has a similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates optional filters but provides no guidance on when to use this tool versus alternatives, such as the v2 version. It does not specify scenarios where this tool is preferred or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_get_time_off_v2B
Get WFM time off requests (v2 API) with optional filters. Enhanced version with additional response fields. Requires ZENDESK_WFM_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| agentId | No | Filter by agent ID | |
| status | No | Filter by status (e.g., pending, approved, rejected) | |
| reason | No | Filter by reason | |
| type | No | Filter by type | |
| startTime | No | Filter by start time (ISO format) | |
| endTime | No | Filter by end time (ISO format) | |
| page | No | Page number for pagination | |
| pageSize | No | Number of items per page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must fully disclose behavioral traits. It only names the action ('Get') and a requirement, but fails to mention rate limits, pagination behavior, or the effect of omitting filters. The agent is left guessing about idempotency and safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the action and version. Every word serves a purpose; no fluff. Ideal conciseness for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 optional parameters, no output schema, and no annotations, the description is very sparse. It doesn't explain filter combination semantics, default behavior (e.g., returns all if no filters), or what 'enhanced response fields' are. This leaves the agent underinformed for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds minimal value beyond the schema—'with optional filters' is generic. Parameter descriptions in schema are sufficient, but no extra context like date format specifics or valid enum values is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves time-off requests using the v2 API, specifying it's an enhanced version. This distinguishes it from sibling tools like zendesk_wfm_get_time_off (original) and zendesk_wfm_import_time_off_v2 (import action).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a requirement (ZENDESK_WFM_API_TOKEN) but provides no guidance on when to use this tool versus alternatives like the non-v2 version. The phrase 'Enhanced version' implies a preference but lacks explicit when/when-not criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_import_time_offB
Import or update WFM time off requests for agents. Returns IDs of inserted/updated requests. Requires ZENDESK_WFM_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| requests | Yes | Array of time off requests to import |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It discloses the authentication requirement and output (IDs of inserted/updated requests), but does not mention error handling, rate limits, or side effects beyond obvious writes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a short requirement note. Extremely concise, front-loaded with purpose and outcome.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description provides basic purpose, return info, and auth requirement. However, it lacks details on behavior like partial success, idempotency, or error handling, which would be helpful for a write tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already fully describes the 'requests' parameter. The description does not add additional meaning for parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool imports or updates WFM time off requests and returns IDs. It distinguishes itself from similar tools by name but does not explicitly differentiate from the v2 sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like zendesk_wfm_get_time_off or import_time_off_v2. The description only states the action without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zendesk_wfm_import_time_off_v2A
Import or update WFM time off requests (v2 API). Enhanced version with creator details and shift associations in response. Requires ZENDESK_WFM_API_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
| requests | Yes | Array of time off requests to import |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It states the tool imports or updates but does not clarify whether updates are idempotent, if duplicates are handled, or what data is affected. The auth requirement is noted, but behavioral traits are under-described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, no fluff. The most important information (purpose, version, key features) is front-loaded. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description should provide more context about response details, error handling, batch limits, or behavior on update. It briefly mentions response enhancements but is insufficient for a data mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the parameter descriptions within the schema are adequate. The tool description adds no additional semantic value beyond what the schema already provides (e.g., 'Array of time off requests to import'). Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (import or update), the resource (WFM time off requests), and distinguishes from the sibling by specifying 'v2 API' and 'enhanced version with creator details and shift associations in response.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the required auth token but provides no guidance on when to use this tool versus the non-v2 sibling or other query tools. No exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Tools are clearly grouped by domain (tickets, QA, WFM, AI export) with distinct purposes. Even within similar areas like adding notes, the public/private distinction is clear. No overlapping functionality.
Consistent snake_case naming with domain prefixes and clear verbs (add, get, list, create, update, search). All tools follow a predictable pattern, making it easy for an agent to infer functionality from names.
At 41 tools, the set is large but justified by covering multiple distinct subsystems (tickets, QA, WFM, AI export). Each tool serves a real need, though the total could be slightly reduced by merging some similar tools (e.g., zendesk_get_ticket and zendesk_get_ticket_details).
Core ticket operations are well-covered (CRUD except delete), plus advanced features like audits, metrics, incremental export, and analysis. QA and WFM appear comprehensive. Minor gaps include ticket deletion and merging, but overall the surface is solid.
Maintenance
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
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Build and manage AI-native customer support agents from Claude or any MCP client.
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A Model Context Protocol server for Wix AI tools
Related MCP Servers
- AlicenseAqualityCmaintenanceA Model Context Protocol server that enables AI assistants like Claude to interact with Zulip workspaces, supporting capabilities such as posting messages, listing channels, sending direct messages, and accessing conversation history.812Apache 2.0
- AlicenseBqualityDmaintenanceA server implementation that provides Claude AI with the ability to interact with Zendesk ticketing systems through various functions including retrieving, searching, creating, and updating tickets.728616MIT
- AlicenseAqualityBmaintenanceA Model Context Protocol (MCP) server that connects LLMs to the Zendesk Support & Help Center APIs — with per-user OAuth 2.1 PKCE authentication and fine-grained tool visibility controls.525084MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server for integrating JIRA with Claude, enabling AI assistants to create, search, update, and link JIRA tickets, as well as manage Zephyr test steps through natural language.6407MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/famousdrew/zd-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server