Skip to main content
Glama
srinivas-86

Zendesk MCP Server (Extended)

by srinivas-86

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_HOSTNoHTTP bind address0.0.0.0
MCP_PORTNoHTTP port8000
MCP_KEYS_DBNoSQLite database path for keys and configdata/keys.db
MCP_AUTH_MODENoAuthentication mode: keys, oauth, or bothkeys
MCP_TRANSPORTNoTransport mode: stdio or httpstdio
ZENDESK_EMAILNoAgent email for single-identity mode (either this or both ZENDESK_READ_EMAIL and ZENDESK_WRITE_EMAIL)
MCP_ADMIN_HOSTNoAdmin console bind address127.0.0.1
MCP_ADMIN_PORTNoAdmin console port9000
MCP_PUBLIC_URLNoPublic URL of the server (required for OAuth modes)
ZENDESK_API_KEYYesZendesk API token
MCP_AUTH_ENABLEDNoEnable authentication for HTTP modetrue
MCP_OAUTH_ISSUERNoOIDC issuer URL
ZENDESK_SUBDOMAINYesYour Zendesk subdomain (e.g., 'mycompany' from mycompany.zendesk.com)
MCP_ADMIN_PASSWORDNoAdmin console password (enables admin console)
MCP_OAUTH_AUDIENCENoAudience for JWT validation
MCP_OAUTH_JWKS_URINoJWKS URI override
ZENDESK_READ_EMAILNoRestricted user email for reads (dual identity)
ZENDESK_WRITE_EMAILNoFull agent email for writes (dual identity)
MCP_OAUTH_AUTH_SERVERSNoComma-separated authorization server URLs
MCP_OAUTH_TENANT_CLAIMNoJWT claim for tenantzendesk_tenant
MCP_WRITE_CONFIRMATIONNoElicit approval before public commentsfalse

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_ticketA

Retrieve a Zendesk ticket by its ID.

get_ticketsA

Fetch tickets with cursor pagination.

Pass the returned after_cursor as cursor to get the next page. sort_by: created_at | updated_at | priority | status. per_page max 100.

get_ticket_commentsB

Retrieve comments for a ticket (cursor-paginated), including attachment metadata.

search_ticketsA

Search tickets with Zendesk search syntax.

Examples: 'status:open priority:high', 'requester:jane@example.com', 'printer error created>2026-01-01'. limit max is 100.

get_ticket_attachmentA

Fetch an image attachment by its content_url (from get_ticket_comments) and return it as base64-encoded data. Only safe image types are allowed.

get_userA

Get a Zendesk user by ID — resolve requester_id/assignee_id to name, email, role.

search_usersB

Search Zendesk users by name or email.

list_groupsA

List agent groups (teams) for routing tickets.

list_ticket_fieldsA

List ticket fields including custom fields with their IDs, types, and options. Use this to interpret or set custom_fields {id, value} pairs on tickets.

search_articlesA

Search Help Center knowledge-base articles. Prefer this over reading the whole zendesk://knowledge-base resource.

create_ticketA

Create a new Zendesk ticket. Requires the tickets:write scope.

priority: low | normal | high | urgent. type: problem | incident | question | task. custom_fields: list of {id, value} objects (see list_ticket_fields).

update_ticketA

Update fields on an existing Zendesk ticket. Requires the tickets:write scope.

status: new | open | pending | on-hold | solved | closed. priority: low | normal | high | urgent. due_at: ISO8601 datetime.

upload_attachmentA

Upload a file (base64) to Zendesk. Returns an upload token to pass to create_ticket_comment's upload_tokens. Requires the tickets:write scope. Max 10 MB.

create_ticket_commentA

Add a comment to an existing Zendesk ticket. Requires the tickets:write scope.

WARNING: public=true comments are visible to the end customer. upload_tokens: tokens from upload_attachment to attach files.

Prompts

Interactive templates invoked by user choice

NameDescription
analyze-ticketAnalyze a Zendesk ticket and provide insights
draft-ticket-responseDraft a professional response to a Zendesk ticket

Resources

Contextual data attached and managed by the client

NameDescription
Zendesk Knowledge BaseAccess to Zendesk Help Center articles and sections

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/srinivas-86/zendesk-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server