Zendesk MCP Server + Slack MCP Server

Beginner25 minutes
Use Cases

Common Use Cases

  • New ticket alerts
  • VIP customer notifications
  • SLA breach warnings
  • Ticket assignment notifications
Before You Begin

Prerequisites

  • Zendesk account with API token
  • Slack workspace
Walkthrough

Step-by-Step Guide

1

Connect Zendesk

Configure the Zendesk MCP Server with your subdomain and API token.

2

Connect Slack

Set up the Slack MCP Server.

3

Build Alert Logic

Monitor for new urgent tickets and post to the appropriate Slack channel.

async function alertNewTickets() {
  const tickets = await zendesk.searchTickets({ query: "type:ticket status:new priority:urgent created>1hour" });
  for (const ticket of tickets) {
    await slack.sendMessage({
      channel: "#urgent-support",
      text: `🚨 Urgent ticket: *${ticket.subject}*\nFrom: ${ticket.requester.name}\n<${ticket.url}|View in Zendesk>`
    });
  }
}
4

Add SLA Monitoring

Alert when tickets are approaching their SLA deadline.

Examples

Code Examples

typescript
SLA Monitor
async function checkSLAs() {
  const tickets = await zendesk.searchTickets({ query: "type:ticket status<solved" });
  for (const ticket of tickets) {
    const hoursOpen = hoursSince(ticket.created_at);
    const slaLimit = SLA_LIMITS[ticket.priority];
    if (hoursOpen > slaLimit * 0.8) {
      await slack.sendMessage({ channel: "#support", text: `⏰ SLA warning: *${ticket.subject}* - ${Math.round(slaLimit - hoursOpen)}h remaining` });
    }
  }
}
Help

Troubleshooting

How do I avoid alerting on spam tickets?+
Can I auto-assign based on Slack reactions?+

Quick Info

DifficultyBeginner
Time Estimate25 minutes
Tools
Zendesk MCP ServerSlack MCP Server

Need Integration Help?

Our team can implement this integration for you.

Get in Touch