Freshdesk MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FRESHDESK_DOMAIN | Yes | Your Freshdesk subdomain (e.g., 'acme' from 'https://acme.freshdesk.com') | |
| FRESHDESK_API_KEY | Yes | Your Freshdesk API key |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_ticketsB | List tickets using Freshdesk predefined filters. Defaults to all tickets. |
| search_ticketsA | Search tickets using Freshdesk query syntax. Max 512 chars, 300 results, excludes archived. |
| get_ticketA | Get a single ticket with all fields and custom fields. Optionally include conversations, requester, stats. |
| create_ticketA | Create a new Freshdesk ticket. Requires email or requester_id, subject, and description. |
| update_ticketC | Update ticket fields including status, priority, assignee, tags, and custom fields. |
| delete_ticketA | Soft-delete a ticket (moves to trash). |
| draft_replyA | Draft a reply to a ticket for review. Does NOT send — call send_reply with the returned draft_id to send. |
| send_replyB | Send a previously drafted reply. Requires a draft_id from draft_reply. |
| draft_noteA | Draft a private or public note on a ticket for review. Does NOT post — call send_note with the returned draft_id to post. |
| send_noteA | Post a previously drafted note. Requires a draft_id from draft_note. |
| list_contactsB | List contacts by email or search by name/phone. Use email for exact match, search_term for autocomplete. |
| get_contactA | Get full details of a contact by ID. |
| list_groupsC | List all agent groups. |
| list_agentsB | List agents, optionally filtered by group. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
Each tool targets a distinct resource-action pair (tickets, contacts, agents, groups) with clear boundaries. Even search_tickets and list_tickets differ by query method vs. predefined filters, and draft/send pairs are explicitly linked via draft_id.
All tool names follow the verb_noun snake_case pattern (search_, list_, get_, create_, update_, delete_, draft_, send_) with consistent noun usage. No camelCase or mixed conventions.
14 tools is well within the typical 3-15 range and each tool covers a meaningful operation for the Freshdesk domain. The count feels proportionate to the server's scope without redundancy.
Ticket lifecycle (CRUD + search/list) and reply/note workflows are fully covered. Minor gaps exist for contacts (only list/get, no create/update/delete) and agents/groups (read-only), but the core helpdesk use case is well supported.