HappyFox MCP server

Triage HappyFox tickets, contacts and KB articles, run reports, and reply or add private notes. Hosted by usefulapi — connect from Claude, Cursor, or any MCP client.

Claude

  1. Open Settings → Connectors → Add custom connector
  2. Paste this URL:
    https://happyfox.usefulapi.io/mcp
  3. Authenticate with HappyFox when prompted

Cursor · VS Code · Windsurf · Cline

Add to your MCP config, then reload & authorize:

{
  "mcpServers": {
    "happyfox": {
      "url": "https://happyfox.usefulapi.io/mcp"
    }
  }
}
live25 toolsFree 100 tool calls / monthPro $9/mo · $90/yr

Tools 25

ToolTypeWhat it does
happyfox_list_ticketsread
List or search tickets
List tickets, newest activity first, with optional filters and HappyFox's search syntax. Paginated (page_info + data). Search `q` examples: `status:"New","In Progress"`, `priority:"High"`, `assignee:none`, `tag:"billing"`, `contact:"[email protected]"`, `unresponded:true`, `breached:true`, `duedate:overdue`, `created-after:"2026/01/31"`, `last-modified-on-or-after:"2026/09/01"`, `"Custom Field":"value"`. Separate several filters with a space. HappyFox: GET /api/1.1/json/tickets/.
happyfox_get_ticketread
Get one ticket
Fetch a ticket with its full conversation: status, priority, category, contact, assignee, custom fields, SLA breaches and every update (messages, private notes, property changes, attachment links that expire in 5 minutes). HappyFox: GET /api/1.1/json/ticket/<ticket_number>/.
happyfox_list_contactsread
List or search contacts
List contacts (customers), paginated, or search them. Search `q` fields: name, email, phone (digits only, no +), updated_since, created_since — e.g. `name:adam email:[email protected]` (space-separated, all must match). HappyFox: GET /api/1.1/json/users/.
happyfox_get_contactread
Get one contact
Fetch a contact by id or by email address — phones, contact groups, ticket counts and custom fields. HappyFox: GET /api/1.1/json/user/<id or email>/.
happyfox_list_contact_groupsread
List contact groups
List contact groups (typically customer companies) with their tagged email domains. HappyFox: GET /api/1.1/json/contact_groups/.
happyfox_get_contact_groupread
Get one contact group
Fetch a contact group and its member contacts. HappyFox: GET /api/1.1/json/contact_group/<id>/.
happyfox_list_categoriesread
List categories
List ticket categories (queues) with their ids — needed to create a ticket or filter tickets. HappyFox: GET /api/1.1/json/categories/.
happyfox_list_staffread
List agents
List agents (staff) with their ids, roles, categories and active flag — the `staff` id every reply/note needs, and assignee ids. HappyFox: GET /api/1.1/json/staff/.
happyfox_list_statusesread
List statuses
List ticket statuses with ids and behaviour (pending / completed) — ids used to change a ticket's status. HappyFox: GET /api/1.1/json/statuses/.
happyfox_list_prioritiesread
List priorities
List ticket priorities with ids — ids used to set a ticket's priority. HappyFox: GET /api/1.1/json/priorities/.
happyfox_list_ticket_custom_fieldsread
List ticket custom fields
List ticket custom fields: id, type, choices (with choice ids), required flags and categories. Use the ids as t-cf-<id>. HappyFox: GET /api/1.1/json/ticket_custom_fields/.
happyfox_list_contact_custom_fieldsread
List contact custom fields
List contact custom fields: id, type, choices and required flag. Use the ids as c-cf-<id>. HappyFox: GET /api/1.1/json/user_custom_fields/.
happyfox_list_reportsread
List reports
List the saved reports (id, name, description) from the Reports module. HappyFox: GET /api/1.1/json/reports/.
happyfox_get_report_summaryread
Get a report summary
Summary counts for a saved report: ticket, completed, assigned, pending and unassigned counts. HappyFox: GET /api/1.1/json/report/<id>/.
happyfox_get_report_tabular_dataread
Get a report's ticket rows
The tabular view of a saved report — one row per ticket (display_id, subject, status, assignee, due date), paginated. HappyFox: GET /api/1.1/json/report/<id>/tabulardata/.
happyfox_list_kb_articlesread
Export knowledge-base articles
Export the knowledge base: external (customer-facing) articles by default, or internal (agent-only) articles. HappyFox: GET /api/1.1/json/kb/articles/ or /kb/internal-articles/.
happyfox_create_ticketwrite
Create a ticket
Open a new ticket on behalf of a contact (created if the email is new). Needs a category id (a public category), a subject and a message in `text` or `html`. HappyFox: POST /api/1.1/json/tickets/.
happyfox_add_staff_replywrite
Reply to a ticket as an agent
Add an agent reply to a ticket and/or change its status, priority, assignee, due date or tags. The contact is emailed ONLY if update_customer is true (HappyFox default: false). With no message it just updates properties. Moving to a completed status may require the category's compulsory custom fields. HappyFox: POST /api/1.1/json/ticket/<ticket_number>/staff_update/.
happyfox_add_private_notewrite
Add a private note to a ticket
Add an internal note (never sent to the contact), optionally alerting agents and changing status, priority, assignee, due date or tags. HappyFox: POST /api/1.1/json/ticket/<ticket_number>/staff_pvtnote/.
happyfox_update_ticket_tagswrite
Add or remove ticket tags
Add and/or remove tags on a ticket without touching anything else. HappyFox: POST /api/1.1/json/ticket/<ticket_number>/update_tags/.
happyfox_update_ticket_custom_fieldswrite
Edit a ticket's custom fields
Set ticket custom-field values (t-cf-<id>, ids from happyfox_list_ticket_custom_fields). HappyFox: POST /api/1.1/json/ticket/<ticket_number>/update_custom_fields/.
happyfox_create_contactwrite
Create a contact
Create a contact. HappyFox treats this as create-or-edit keyed on email: if the email already exists that contact is updated, and any contact custom field NOT passed is reset — use happyfox_update_contact to edit an existing contact. HappyFox: POST /api/1.1/json/users/.
happyfox_update_contactwrite
Edit a contact
Edit an existing contact's name, email or contact custom fields (c-cf-<id>). Phone numbers are edited via happyfox_create_contact with the phone id. HappyFox: POST /api/1.1/json/user/<id>/.
happyfox_usage_statusmeta
Usage status (free-tier meter)
Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter.
happyfox_upgrademeta
Upgrade to Pro (unlimited)
Subscribe to the Pro plan for UNLIMITED HappyFox tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter.

Pricing

PlanPriceLimit
Free$0100 tool calls / month
Proper user$9/mo · $90/yrUnlimited

This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.

More Customer Support MCP servers

AteraDeskproFreshdeskHelpCrunchKayakoRe:amazeTrengoZendesk

All Customer Support servers →