Deskpro MCP server

Search tickets, people, organizations and KB articles in Deskpro, and create tickets and replies. Hosted by usefulapi — connect from Claude, Cursor, or any MCP client.

Claude

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

Cursor · VS Code · Windsurf · Cline

Add to your MCP config, then reload & authorize:

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

Tools 22

ToolTypeWhat it does
deskpro_get_meread
Get the authenticated agent
Return who the API key acts as — the auth method, the bound person id and their profile. A cheap way to confirm the helpdesk URL and key are right. Deskpro: GET /api/v2/me.
deskpro_list_ticketsread
List tickets
List tickets, filtered by status, assigned agent, requester, organization, department or labels, and sorted. Returns ticket objects (id, ref, subject, ticket_status, agent, person, department, urgency, labels, dates) plus pagination meta. Deskpro: GET /api/v2/tickets.
deskpro_get_ticketread
Get one ticket
Fetch a single ticket by id, with its subject, status, assignment, requester, labels, custom fields, SLA state and timing. A merged ticket redirects to the ticket it was merged into. Deskpro: GET /api/v2/tickets/{id}.
deskpro_list_ticket_messagesread
List a ticket's messages
List the conversation on one ticket — every reply and agent note, with its author, date, is_agent_note flag and HTML body. Deskpro: GET /api/v2/tickets/{id}/messages.
deskpro_list_peopleread
List people
List people (end users and agents), searchable by name and filterable by email, organization or agent flag. Deskpro: GET /api/v2/people.
deskpro_get_personread
Get one person
Fetch a single person by id — name, emails, phone numbers, organization, labels, custom fields and ticket count. Deskpro: GET /api/v2/people/{id}.
deskpro_list_person_ticketsread
List a person's tickets
List the tickets raised by one person — their support history. Deskpro: GET /api/v2/people/{id}/tickets.
deskpro_list_organizationsread
List organizations
List customer organizations, filterable by name or labels. Deskpro: GET /api/v2/organizations.
deskpro_get_organizationread
Get one organization
Fetch a single organization by id — name, summary, email domains, labels, custom fields and ticket count. Deskpro: GET /api/v2/organizations/{id}.
deskpro_list_organization_ticketsread
List an organization's tickets
List the tickets belonging to one organization. Deskpro: GET /api/v2/organizations/{id}/tickets.
deskpro_list_articlesread
List knowledgebase articles
List knowledgebase articles, filterable by category, status and author. Deskpro: GET /api/v2/articles.
deskpro_get_articleread
Get one article
Fetch a single knowledgebase article by id — title, content, status, categories and labels. Deskpro: GET /api/v2/articles/{id}.
deskpro_list_departmentsread
List ticket departments
List the ticket departments (id, title, parent, whether tickets/chat are enabled) — needed to route a new ticket. Deskpro: GET /api/v2/ticket_departments.
deskpro_list_agentsread
List agents
List the helpdesk's agents (id, name, email, online state) — needed to assign a ticket. Deskpro: GET /api/v2/agents.
deskpro_list_ticket_statusesread
List ticket statuses
List the ticket statuses and custom sub-statuses (status_type, status_code, title) configured on the helpdesk. Deskpro: GET /api/v2/ticket_statuses.
deskpro_searchread
Search the helpdesk
Quick search across tickets, people, organizations, articles, news, downloads, community topics and chats; results are grouped by type. Deskpro: GET /api/v2/search.
deskpro_create_ticketwrite
Create a ticket
Open a new ticket for a requester (by person id, or by email — Deskpro creates the person if the email is new) with a first message. Depending on the helpdesk's triggers this may email the requester. Returns the created ticket. Deskpro: POST /api/v2/tickets.
deskpro_update_ticketwrite
Update a ticket
Change a ticket's subject, status, assignment, department, organization, urgency, hold state or labels. Only the fields you pass are sent. Reversible by updating again. Cannot set the hidden (deleted/spam) status. Deskpro: PUT /api/v2/tickets/{id}.
deskpro_add_ticket_messagewrite
Reply to a ticket or add a note
Add a message to a ticket as the key's agent. With is_note=true it is an internal agent note (not shown to the requester); with is_note=false it is a REPLY that the helpdesk emails to the requester — that cannot be unsent. Deskpro: POST /api/v2/tickets/{id}/messages.
deskpro_create_organizationwrite
Create an organization
Create a customer organization. Email domains auto-associate people with matching addresses. Deskpro: POST /api/v2/organizations.
deskpro_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.
deskpro_upgrademeta
Upgrade to Pro (unlimited)
Subscribe to the Pro plan for UNLIMITED Deskpro 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

AteraFreshdeskHappyFoxHelpCrunchKayakoRe:amazeTrengoZendesk

All Customer Support servers →