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.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"deskpro": {
"url": "https://deskpro.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
deskpro_get_me | read | 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_tickets | read | 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_ticket | read | 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_messages | read | 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_people | read | 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_person | read | 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_tickets | read | List a person's tickets List the tickets raised by one person — their support history. Deskpro: GET /api/v2/people/{id}/tickets. |
deskpro_list_organizations | read | List organizations List customer organizations, filterable by name or labels. Deskpro: GET /api/v2/organizations. |
deskpro_get_organization | read | 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_tickets | read | List an organization's tickets List the tickets belonging to one organization. Deskpro: GET /api/v2/organizations/{id}/tickets. |
deskpro_list_articles | read | List knowledgebase articles List knowledgebase articles, filterable by category, status and author. Deskpro: GET /api/v2/articles. |
deskpro_get_article | read | Get one article Fetch a single knowledgebase article by id — title, content, status, categories and labels. Deskpro: GET /api/v2/articles/{id}. |
deskpro_list_departments | read | 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_agents | read | 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_statuses | read | 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_search | read | 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_ticket | write | 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_ticket | write | 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_message | write | 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_organization | write | Create an organization Create a customer organization. Email domains auto-associate people with matching addresses. Deskpro: POST /api/v2/organizations. |
deskpro_usage_status | 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_upgrade | 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. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Proper user | $9/mo · $90/yr | Unlimited |
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.