{"slug":"helpdesk-automation-2","title":"helpdesk-automation","summary":"Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-14T20:53:36.345406Z","repo":{"url":"https://github.com/davepoon/buildwithclaude","stars":3556,"forks":535,"license":"MIT","updatedAt":"2026-09-27T03:56:38Z"},"bodyHtml":"<hr>\n<h2>name: helpdesk-automation\ndescription: \"Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.\"\nrequires:\nmcp: [rube]\ncategory: customer-support</h2>\n<h1>HelpDesk Automation via Rube MCP</h1>\n<p>Automate HelpDesk ticketing operations through Composio's HelpDesk toolkit via Rube MCP.</p>\n<p><strong>Toolkit docs</strong>: <a href=\"https://composio.dev/toolkits/helpdesk\">composio.dev/toolkits/helpdesk</a></p>\n<h2>Prerequisites</h2>\n<ul>\n<li>Rube MCP must be connected (RUBE_SEARCH_TOOLS available)</li>\n<li>Active HelpDesk connection via <code>RUBE_MANAGE_CONNECTIONS</code> with toolkit <code>helpdesk</code></li>\n<li>Always call <code>RUBE_SEARCH_TOOLS</code> first to get current tool schemas</li>\n</ul>\n<h2>Setup</h2>\n<p><strong>Get Rube MCP</strong>: Add <code>https://rube.app/mcp</code> as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.</p>\n<ol>\n<li>Verify Rube MCP is available by confirming <code>RUBE_SEARCH_TOOLS</code> responds</li>\n<li>Call <code>RUBE_MANAGE_CONNECTIONS</code> with toolkit <code>helpdesk</code></li>\n<li>If connection is not ACTIVE, follow the returned auth link to complete HelpDesk authentication</li>\n<li>Confirm connection status shows ACTIVE before running any workflows</li>\n</ol>\n<h2>Core Workflows</h2>\n<h3>1. List and Browse Tickets</h3>\n<p><strong>When to use</strong>: User wants to retrieve, browse, or paginate through support tickets</p>\n<p><strong>Tool sequence</strong>:</p>\n<ol>\n<li><code>HELPDESK_LIST_TICKETS</code> - List tickets with sorting and pagination [Required]</li>\n</ol>\n<p><strong>Key parameters</strong>:</p>\n<ul>\n<li><code>silo</code>: Ticket folder - 'tickets', 'archive', 'trash', or 'spam' (default: 'tickets')</li>\n<li><code>sortBy</code>: Sort field - 'createdAt', 'updatedAt', or 'lastMessageAt' (default: 'createdAt')</li>\n<li><code>order</code>: Sort direction - 'asc' or 'desc' (default: 'desc')</li>\n<li><code>pageSize</code>: Results per page, 1-100 (default: 20)</li>\n<li><code>next.value</code>: Timestamp cursor for forward pagination</li>\n<li><code>next.ID</code>: ID cursor for forward pagination</li>\n<li><code>prev.value</code>: Timestamp cursor for backward pagination</li>\n<li><code>prev.ID</code>: ID cursor for backward pagination</li>\n</ul>\n<p><strong>Pitfalls</strong>:</p>\n<ul>\n<li>Pagination uses cursor-based approach with timestamp + ID pairs</li>\n<li>Forward pagination requires both <code>next.value</code> and <code>next.ID</code> from previous response</li>\n<li>Backward pagination requires both <code>prev.value</code> and <code>prev.ID</code></li>\n<li><code>silo</code> determines which folder to list from; default is active tickets</li>\n<li><code>pageSize</code> max is 100; default is 20</li>\n<li>Archived and trashed tickets are in separate silos</li>\n</ul>\n<h3>2. Manage Ticket Views</h3>\n<p><strong>When to use</strong>: User wants to see saved agent views for organizing tickets</p>\n<p><strong>Tool sequence</strong>:</p>\n<ol>\n<li><code>HELPDESK_LIST_VIEWS</code> - List all agent views [Required]</li>\n</ol>\n<p><strong>Key parameters</strong>: (none required)</p>\n<p><strong>Pitfalls</strong>:</p>\n<ul>\n<li>Views are predefined saved filters configured by agents in the HelpDesk UI</li>\n<li>View definitions include filter criteria that can be used to understand ticket organization</li>\n<li>Views cannot be created or modified via API; they are managed in the HelpDesk UI</li>\n</ul>\n<h3>3. Use Canned Responses</h3>\n<p><strong>When to use</strong>: User wants to list available canned (template) responses for tickets</p>\n<p><strong>Tool sequence</strong>:</p>\n<ol>\n<li><code>HELPDESK_LIST_CANNED_RESPONSES</code> - Retrieve all predefined reply templates [Required]</li>\n</ol>\n<p><strong>Key parameters</strong>: (none required)</p>\n<p><strong>Pitfalls</strong>:</p>\n<ul>\n<li>Canned responses are predefined templates for common replies</li>\n<li>They may include placeholder variables that need to be filled in</li>\n<li>Canned responses are managed through the HelpDesk UI</li>\n<li>Response content may include HTML formatting</li>\n</ul>\n<h3>4. Inspect Custom Fields</h3>\n<p><strong>When to use</strong>: User wants to view custom field definitions for the account</p>\n<p><strong>Tool sequence</strong>:</p>\n<ol>\n<li><code>HELPDESK_LIST_CUSTOM_FIELDS</code> - List all custom field definitions [Required]</li>\n</ol>\n<p><strong>Key parameters</strong>: (none required)</p>\n<p><strong>Pitfalls</strong>:</p>\n<ul>\n<li>Custom fields extend the default ticket schema with organization-specific data</li>\n<li>Field definitions include field type, name, and validation rules</li>\n<li>Custom fields are configured in the HelpDesk admin panel</li>\n<li>Field values appear on tickets when the field has been populated</li>\n</ul>\n<h2>Common Patterns</h2>\n<h3>Ticket Browsing Pattern</h3>\n<pre><code>1. Call HELPDESK_LIST_TICKETS with desired silo and sortBy\n2. Process the returned page of tickets\n3. Extract next.value and next.ID from the response\n4. Call HELPDESK_LIST_TICKETS with those cursor values for next page\n5. Continue until no more cursor values are returned\n</code></pre>\n<h3>Ticket Folder Navigation</h3>\n<pre><code>Active tickets:  silo='tickets'\nArchived:        silo='archive'\nTrashed:         silo='trash'\nSpam:            silo='spam'\n</code></pre>\n<h3>Cursor-Based Pagination</h3>\n<pre><code>Forward pagination:\n  - Use next.value (timestamp) and next.ID from response\n  - Pass as next.value and next.ID parameters in next call\n\nBackward pagination:\n  - Use prev.value (timestamp) and prev.ID from response\n  - Pass as prev.value and prev.ID parameters in next call\n</code></pre>\n<h2>Known Pitfalls</h2>\n<p><strong>Cursor Pagination</strong>:</p>\n<ul>\n<li>Both timestamp and ID are required for cursor navigation</li>\n<li>Cursor values are timestamps in ISO 8601 date-time format</li>\n<li>Mixing forward and backward cursors in the same request is undefined behavior</li>\n</ul>\n<p><strong>Silo Filtering</strong>:</p>\n<ul>\n<li>Tickets are physically separated into silos (folders)</li>\n<li>Moving tickets between silos is done in the HelpDesk UI</li>\n<li>Each silo query is independent; there is no cross-silo search</li>\n</ul>\n<p><strong>Read-Only Operations</strong>:</p>\n<ul>\n<li>Current Composio toolkit provides list/read operations</li>\n<li>Ticket creation, update, and reply operations may require additional tools</li>\n<li>Check RUBE_SEARCH_TOOLS for any newly available tools</li>\n</ul>\n<p><strong>Rate Limits</strong>:</p>\n<ul>\n<li>HelpDesk API has per-account rate limits</li>\n<li>Implement backoff on 429 responses</li>\n<li>Keep page sizes reasonable to avoid timeouts</li>\n</ul>\n<p><strong>Response Parsing</strong>:</p>\n<ul>\n<li>Response data may be nested under <code>data</code> or <code>data.data</code></li>\n<li>Parse defensively with fallback patterns</li>\n<li>Ticket IDs are strings</li>\n</ul>\n<h2>Quick Reference</h2>\n<table>\n<thead>\n<tr>\n<th>Task</th>\n<th>Tool Slug</th>\n<th>Key Params</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>List tickets</td>\n<td>HELPDESK_LIST_TICKETS</td>\n<td>silo, sortBy, order, pageSize</td>\n</tr>\n<tr>\n<td>List views</td>\n<td>HELPDESK_LIST_VIEWS</td>\n<td>(none)</td>\n</tr>\n<tr>\n<td>List canned responses</td>\n<td>HELPDESK_LIST_CANNED_RESPONSES</td>\n<td>(none)</td>\n</tr>\n<tr>\n<td>List custom fields</td>\n<td>HELPDESK_LIST_CUSTOM_FIELDS</td>\n<td>(none)</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<p><em>Powered by <a href=\"https://composio.dev\">Composio</a></em></p>\n","files":[{"path":"SKILL.md","sizeBytes":6021,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-14T20:53:54.941774Z","sha256":"17FE31B92654B69A3D7137F9872ABD40BA4D5545406A120E6ABD37E7F0B1105A","sizeBytes":2505},"review":null,"source":{"repositoryUrl":"https://github.com/davepoon/buildwithclaude","path":"plugins/all-skills/skills/helpdesk-automation","license":"MIT","commit":"6178ae2b0900b3600419853206de1dddf0f28311","subtreeSha":"13A1F6355A28568B5E6AA3146A7FCDDE559A744438652CA0AB8E91957DF8F10C","lastSyncedAt":"2026-09-27T19:47:46.68834Z"},"reviewedAt":"2026-09-14T20:56:15.221247Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/davepoon/buildwithclaude/tree/main/plugins/all-skills/skills/helpdesk-automation"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install davepoon-buildwithclaude@llmmart"},{"target":"git","command":"git clone https://github.com/davepoon/buildwithclaude.git"}]}