freshservice-automation
Automate Freshservice ITSM tasks via Rube MCP (Composio): create/update tickets, bulk operations, service requests, and outbound emails. Always search tools first for current schemas.
Freshservice Automation via Rube MCP
Automate Freshservice IT Service Management operations through Composio's Freshservice toolkit via Rube MCP.
Prerequisites
RUBE_MANAGE_CONNECTIONS with toolkit freshserviceRUBE_SEARCH_TOOLS first to get current tool schemasSetup
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.
RUBE_SEARCH_TOOLS respondsRUBE_MANAGE_CONNECTIONS with toolkit freshserviceCore Workflows
1. List and Search Tickets
When to use: User wants to find, list, or search for tickets
Tool sequence:
FRESHSERVICE_LIST_TICKETS - List tickets with optional filtering and pagination [Required]FRESHSERVICE_GET_TICKET - Get detailed information for a specific ticket [Optional]Key parameters for listing:
filter: Predefined filter ('all_tickets', 'deleted', 'spam', 'watching')updated_since: ISO 8601 timestamp to get tickets updated after this timeorder_by: Sort field ('created_at', 'updated_at', 'status', 'priority')order_type: Sort direction ('asc' or 'desc')page: Page number (1-indexed)per_page: Results per page (1-100, default 30)include: Additional fields ('requester', 'stats', 'description', 'conversations', 'assets')Key parameters for get:
ticket_id: Unique ticket ID or display_idinclude: Additional fields to includePitfalls:
updated_since to retrieve older ticketsinclude value consumes additional API creditspage is 1-indexed; minimum value is 1per_page max is 100; default is 302. Create a Ticket
When to use: User wants to log a new incident or request
Tool sequence:
FRESHSERVICE_CREATE_TICKET - Create a new ticket [Required]Key parameters:
subject: Ticket subject line (required)description: HTML description of the ticket (required)status: Ticket status - 2 (Open), 3 (Pending), 4 (Resolved), 5 (Closed) (required)priority: Ticket priority - 1 (Low), 2 (Medium), 3 (High), 4 (Urgent) (required)email: Requester's email address (provide either email or requester_id)requester_id: User ID of the requestertype: Ticket type ('Incident' or 'Service Request')source: Channel - 1 (Email), 2 (Portal), 3 (Phone), 4 (Chat), 5 (Twitter), 6 (Facebook)impact: Impact level - 1 (Low), 2 (Medium), 3 (High)urgency: Urgency level - 1 (Low), 2 (Medium), 3 (High), 4 (Critical)Pitfalls:
subject, description, status, and priority are all requiredemail or requester_id must be provided to identify the requester3. Bulk Update Tickets
When to use: User wants to update multiple tickets at once
Tool sequence:
FRESHSERVICE_LIST_TICKETS - Find tickets to update [Prerequisite]FRESHSERVICE_BULK_UPDATE_TICKETS - Update multiple tickets [Required]Key parameters:
ids: Array of ticket IDs to update (required)update_fields: Dictionary of fields to update (required)- Allowed keys: 'subject', 'description', 'status', 'priority', 'responder_id', 'group_id', 'type', 'tags', 'custom_fields'
Pitfalls:
4. Create Ticket via Outbound Email
When to use: User wants to create a ticket by sending an outbound email notification
Tool sequence:
FRESHSERVICE_CREATE_TICKET_OUTBOUND_EMAIL - Create ticket with email notification [Required]Key parameters:
email: Requester's email address (required)subject: Email subject / ticket subject (required)description: HTML email body contentstatus: Ticket status (2=Open, 3=Pending, 4=Resolved, 5=Closed)priority: Ticket priority (1=Low, 2=Medium, 3=High, 4=Urgent)cc_emails: Array of CC email addressesemail_config_id: Email configuration ID for the sender addressname: Requester namePitfalls:
email_config_id determines which email address the notification appears to come from5. Create Service Requests
When to use: User wants to submit a service catalog request
Tool sequence:
FRESHSERVICE_CREATE_SERVICE_REQUEST - Create a service request for a catalog item [Required]Key parameters:
item_display_id: Display ID of the catalog item (required)email: Requester's email addressquantity: Number of items to request (default: 1)custom_fields: Custom field values for the service item formparent_ticket_id: Display ID of a parent ticket (for child requests)Pitfalls:
item_display_id can be found in Admin > Service Catalog > item URL (e.g., /service_catalog/items/1)Common Patterns
Status Code Reference
| Code | Status |
|---|---|
| 2 | Open |
| 3 | Pending |
| 4 | Resolved |
| 5 | Closed |
Priority Code Reference
| Code | Priority |
|---|---|
| 1 | Low |
| 2 | Medium |
| 3 | High |
| 4 | Urgent |
Pagination
page (1-indexed) and per_page (max 100) parameterspage by 1 each requestper_pageFinding Tickets by Date Range
1. Call FRESHSERVICE_LIST_TICKETS with updated_since='2024-01-01T00:00:00Z'
Optionally add order_by='updated_at' and order_type='desc'
Paginate through results Known Pitfalls
Numeric Codes:
Date Filtering:
updated_since parameter for older ticketsRate Limits:
include option consumes additional API creditsResponse Parsing:
data or data.dataQuick Reference
| Task | Tool Slug | Key Params |
|---|---|---|
| List tickets | FRESHSERVICE_LIST_TICKETS | filter, updated_since, page, per_page |
| Get ticket | FRESHSERVICE_GET_TICKET | ticket_id, include |
| Create ticket | FRESHSERVICE_CREATE_TICKET | subject, description, status, priority, email |
| Bulk update | FRESHSERVICE_BULK_UPDATE_TICKETS | ids, update_fields |
| Outbound email ticket | FRESHSERVICE_CREATE_TICKET_OUTBOUND_EMAIL | email, subject, description |
| Service request | FRESHSERVICE_CREATE_SERVICE_REQUEST | item_display_id, email, quantity |