Zendesk Automation via Rube MCP
Automate Zendesk operations through Composio's Zendesk toolkit via Rube MCP.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Zendesk connection via
RUBE_MANAGE_CONNECTIONS with toolkit zendesk
- Always call
RUBE_SEARCH_TOOLS first to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLS responds
- Call
RUBE_MANAGE_CONNECTIONS with toolkit zendesk
- If connection is not ACTIVE, follow the returned auth link to complete Zendesk auth
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. List and Search Tickets
When to use: User wants to view, filter, or search support tickets
Tool sequence:
ZENDESK_LIST_ZENDESK_TICKETS - List all tickets with pagination [Required]
ZENDESK_GET_ZENDESK_TICKET_BY_ID - Get specific ticket details [Optional]
Key parameters:
page: Page number (1-based)
per_page: Results per page (max 100)
sort_by: Sort field ('created_at', 'updated_at', 'priority', 'status')
sort_order: 'asc' or 'desc'
ticket_id: Ticket ID for single retrieval
Pitfalls:
- LIST uses
page/per_page pagination, NOT offset-based; check next_page in response
- Maximum 100 results per page; iterate with page numbers until
next_page is null
- Deleted tickets are not returned by LIST; use GET_BY_ID which returns status 'deleted'
- Ticket comments and audits are included in GET_BY_ID but not in LIST responses
2. Create and Update Tickets
When to use: User wants to create new tickets or modify existing ones
Tool sequence:
ZENDESK_SEARCH_ZENDESK_USERS - Find requester/assignee [Prerequisite]
ZENDESK_CREATE_ZENDESK_TICKET - Create a new ticket [Required]
ZENDESK_UPDATE_ZENDESK_TICKET - Update ticket fields [Optional]
ZENDESK_DELETE_ZENDESK_TICKET - Delete a ticket [Optional]
Key parameters:
subject: Ticket subject line
description: Ticket body (for creation; becomes first comment)
priority: 'urgent', 'high', 'normal', 'low'
status: 'new', 'open', 'pending', 'hold', 'solved', 'closed'
type: 'problem', 'incident', 'question', 'task'
assignee_id: Agent user ID to assign
requester_id: Requester user ID
tags: Array of tag strings
ticket_id: Ticket ID (for update/delete)
Pitfalls:
- Tags on UPDATE REPLACE existing tags entirely; merge with current tags to preserve them
- Use
safe_update with updated_stamp to prevent concurrent modification conflicts
- DELETE is permanent and irreversible; tickets cannot be recovered
description is only used on creation; use REPLY_ZENDESK_TICKET to add comments after creation
- Closed tickets cannot be updated; create a follow-up ticket instead
3. Reply to Tickets
When to use: User wants to add comments or replies to tickets
Tool sequence:
ZENDESK_GET_ZENDESK_TICKET_BY_ID - Get current ticket state [Prerequisite]
ZENDESK_REPLY_ZENDESK_TICKET - Add a reply/comment [Required]
Key parameters:
ticket_id: Ticket ID to reply to
body: Reply text content
public: Boolean; true for public reply, false for internal note
author_id: Author user ID (defaults to authenticated user)
Pitfalls:
- Set
public: false for internal notes visible only to agents
- Default is public reply which sends email to requester
- HTML is supported in body text
- Replying can also update ticket status simultaneously
4. Manage Users
When to use: User wants to find or create Zendesk users (agents, end-users)
Tool sequence:
ZENDESK_SEARCH_ZENDESK_USERS - Search for users [Required]
ZENDESK_CREATE_ZENDESK_USER - Create a new user [Optional]
ZENDESK_GET_ABOUT_ME - Get authenticated user info [Optional]
Key parameters:
query: Search string (matches name, email, phone, etc.)
name: User's full name (required for creation)
email: User's email address
role: 'end-user', 'agent', or 'admin'
verified: Whether email is verified
Pitfalls:
- User search is fuzzy; may return partial matches
- Creating a user with an existing email returns the existing user (upsert behavior)
- Agent and admin roles may require specific plan features
5. Manage Organizations
When to use: User wants to list, create, or manage organizations
Tool sequence:
ZENDESK_GET_ALL_ZENDESK_ORGANIZATIONS - List all organizations [Required]
ZENDESK_GET_ZENDESK_ORGANIZATION - Get specific organization [Optional]
ZENDESK_CREATE_ZENDESK_ORGANIZATION - Create organization [Optional]
ZENDESK_UPDATE_ZENDESK_ORGANIZATION - Update organization [Optional]
ZENDESK_COUNT_ZENDESK_ORGANIZATIONS - Get total count [Optional]
Key parameters:
name: Organization name (unique, req
1---2name: zendesk-automation3description: Zendesk Automation via Rube MCP4---567# Zendesk Automation via Rube MCP89Automate Zendesk operations through Composio's Zendesk toolkit via Rube MCP.1011## Prerequisites1213- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)14- Active Zendesk connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `zendesk`15- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas1617## Setup1819**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.2021221. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds232. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `zendesk`243. If connection is not ACTIVE, follow the returned auth link to complete Zendesk auth254. Confirm connection status shows ACTIVE before running any workflows2627## Core Workflows2829### 1. List and Search Tickets3031**When to use**: User wants to view, filter, or search support tickets3233**Tool sequence**:341. `ZENDESK_LIST_ZENDESK_TICKETS` - List all tickets with pagination [Required]352. `ZENDESK_GET_ZENDESK_TICKET_BY_ID` - Get specific ticket details [Optional]3637**Key parameters**:38- `page`: Page number (1-based)39- `per_page`: Results per page (max 100)40- `sort_by`: Sort field ('created_at', 'updated_at', 'priority', 'status')41- `sort_order`: 'asc' or 'desc'42- `ticket_id`: Ticket ID for single retrieval4344**Pitfalls**:45- LIST uses `page`/`per_page` pagination, NOT offset-based; check `next_page` in response46- Maximum 100 results per page; iterate with page numbers until `next_page` is null47- Deleted tickets are not returned by LIST; use GET_BY_ID which returns status 'deleted'48- Ticket comments and audits are included in GET_BY_ID but not in LIST responses4950### 2. Create and Update Tickets5152**When to use**: User wants to create new tickets or modify existing ones5354**Tool sequence**:551. `ZENDESK_SEARCH_ZENDESK_USERS` - Find requester/assignee [Prerequisite]562. `ZENDESK_CREATE_ZENDESK_TICKET` - Create a new ticket [Required]573. `ZENDESK_UPDATE_ZENDESK_TICKET` - Update ticket fields [Optional]584. `ZENDESK_DELETE_ZENDESK_TICKET` - Delete a ticket [Optional]5960**Key parameters**:61- `subject`: Ticket subject line62- `description`: Ticket body (for creation; becomes first comment)63- `priority`: 'urgent', 'high', 'normal', 'low'64- `status`: 'new', 'open', 'pending', 'hold', 'solved', 'closed'65- `type`: 'problem', 'incident', 'question', 'task'66- `assignee_id`: Agent user ID to assign67- `requester_id`: Requester user ID68- `tags`: Array of tag strings69- `ticket_id`: Ticket ID (for update/delete)7071**Pitfalls**:72- Tags on UPDATE REPLACE existing tags entirely; merge with current tags to preserve them73- Use `safe_update` with `updated_stamp` to prevent concurrent modification conflicts74- DELETE is permanent and irreversible; tickets cannot be recovered75- `description` is only used on creation; use REPLY_ZENDESK_TICKET to add comments after creation76- Closed tickets cannot be updated; create a follow-up ticket instead7778### 3. Reply to Tickets7980**When to use**: User wants to add comments or replies to tickets8182**Tool sequence**:831. `ZENDESK_GET_ZENDESK_TICKET_BY_ID` - Get current ticket state [Prerequisite]842. `ZENDESK_REPLY_ZENDESK_TICKET` - Add a reply/comment [Required]8586**Key parameters**:87- `ticket_id`: Ticket ID to reply to88- `body`: Reply text content89- `public`: Boolean; true for public reply, false for internal note90- `author_id`: Author user ID (defaults to authenticated user)9192**Pitfalls**:93- Set `public: false` for internal notes visible only to agents94- Default is public reply which sends email to requester95- HTML is supported in body text96- Replying can also update ticket status simultaneously9798### 4. Manage Users99100**When to use**: User wants to find or create Zendesk users (agents, end-users)101102**Tool sequence**:1031. `ZENDESK_SEARCH_ZENDESK_USERS` - Search for users [Required]1042. `ZENDESK_CREATE_ZENDESK_USER` - Create a new user [Optional]1053. `ZENDESK_GET_ABOUT_ME` - Get authenticated user info [Optional]106107**Key parameters**:108- `query`: Search string (matches name, email, phone, etc.)109- `name`: User's full name (required for creation)110- `email`: User's email address111- `role`: 'end-user', 'agent', or 'admin'112- `verified`: Whether email is verified113114**Pitfalls**:115- User search is fuzzy; may return partial matches116- Creating a user with an existing email returns the existing user (upsert behavior)117- Agent and admin roles may require specific plan features118119### 5. Manage Organizations120121**When to use**: User wants to list, create, or manage organizations122123**Tool sequence**:1241. `ZENDESK_GET_ALL_ZENDESK_ORGANIZATIONS` - List all organizations [Required]1252. `ZENDESK_GET_ZENDESK_ORGANIZATION` - Get specific organization [Optional]1263. `ZENDESK_CREATE_ZENDESK_ORGANIZATION` - Create organization [Optional]1274. `ZENDESK_UPDATE_ZENDESK_ORGANIZATION` - Update organization [Optional]1285. `ZENDESK_COUNT_ZENDESK_ORGANIZATIONS` - Get total count [Optional]129130**Key parameters**:131- `name`: Organization name (unique, req