Skip to main content
Glama
ArcaneSK

Freshdesk MCP Server

by ArcaneSK

Freshdesk MCP Server

A Model Context Protocol (MCP) server that exposes Freshdesk helpdesk operations as callable tools. It provides full ticket lifecycle management, two-phase draft/send for replies and notes, contact lookup, and agent/group discovery — all through a standard MCP interface compatible with any MCP client.

Features

  • 14 tools covering tickets, replies, notes, contacts, groups, and agents

  • Two-phase draft/send pattern for replies and notes — review before posting

  • Custom fields support on ticket create and update

  • Predefined filters and full query-syntax search for tickets

  • Client-agnostic: works with any MCP-compatible host

Related MCP server: Freshservice MCP Server

Prerequisites

  • Node.js 18 or later

  • A Freshdesk account with API access

Getting Your API Key

  1. Log in to your Freshdesk account

  2. Click your avatar in the top-right corner and select Profile Settings

  3. Your API key is displayed in the right sidebar under Your API Key

Installation

git clone https://github.com/ArcaneSK/freshdesk-mcp-server.git
cd freshdesk-mcp-server
npm install
npm run build

Environment Setup

Copy the example environment file and fill in your credentials:

cp .env.example .env

Edit .env with your values:

FRESHDESK_API_KEY=your_api_key_here
FRESHDESK_DOMAIN=your_subdomain

Variable

Description

Example

FRESHDESK_API_KEY

Your Freshdesk API key (see Getting Your API Key)

abcdef123456

FRESHDESK_DOMAIN

Your Freshdesk subdomain — if your URL is https://acme.freshdesk.com, use acme

acme

Claude Desktop Configuration

Add the following to your Claude Desktop claude_desktop_config.json, replacing the path with your actual install location:

{
  "mcpServers": {
    "freshdesk": {
      "command": "node",
      "args": ["/path/to/freshdesk-mcp-server/dist/index.js"],
      "env": {
        "FRESHDESK_API_KEY": "your_api_key",
        "FRESHDESK_DOMAIN": "your_subdomain"
      }
    }
  }
}

Set FRESHDESK_DOMAIN to your Freshdesk subdomain only — for example, if your helpdesk URL is https://acme.freshdesk.com, use acme.

Tools Reference

Tool

Description

Key Inputs

list_tickets

List tickets using predefined filters

filter, email, requester_id, page

search_tickets

Search tickets using Freshdesk query syntax

query (max 512 chars)

get_ticket

Retrieve a single ticket with all fields

ticket_id, include (conversations, requester, stats)

create_ticket

Create a new ticket

subject, description, email or requester_id

update_ticket

Update ticket fields

ticket_id, status, priority, responder_id, custom_fields

delete_ticket

Move a ticket to trash

ticket_id

draft_reply

Stage a reply for review (does not send)

ticket_id, body, cc_emails

send_reply

Send a previously drafted reply

draft_id

draft_note

Stage a note for review (does not post)

ticket_id, body, private

send_note

Post a previously drafted note

draft_id

list_contacts

List contacts by email or search term

email, search_term, page

get_contact

Get full contact details by ID

contact_id

list_groups

List all agent groups

page, per_page

list_agents

List agents, optionally filtered by group

group_id, page

Two-Phase Draft/Send

Replies and notes use a two-step confirmation pattern to prevent accidental sends:

  1. Call draft_reply or draft_note with the content. The tool returns a draft_id and a preview of the content — nothing is sent to Freshdesk.

  2. Review the draft, then call send_reply or send_note with the draft_id to post it.

Drafts are held in memory with a 10-minute expiration window. Each draft can only be sent once. If a draft expires, create a new one.

Development

# Clone and install
git clone https://github.com/ArcaneSK/freshdesk-mcp-server.git
cd freshdesk-mcp-server
npm install

# Build
npm run build

# Run tests
npm test

# Watch mode (TypeScript)
npm run dev

License

MIT

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ArcaneSK/freshdesk-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server