What is an MCP support desk?
An MCP support desk is customer support that lives inside your MCP server. It is a small set of tools that the user's AI client (Claude, ChatGPT, Cursor) can call to ask a question, open a ticket and read the reply. Your server attaches the context of the failed call, so the user writes one sentence and a person on your team sees what went wrong.
How it works
- 1. A tool fails, or the user has a question. The AI client calls
support_ask. - 2. Your rules answer what they can: a missing connection, a rate limit, an empty balance. An unknown question is never invented; it points at the ticket.
- 3. If a person must act,
support_open_ticketsends the ticket with the account, the client, the catalogue version and the last calls with their errors. - 4. Your team replies in the inbox. The reply goes out by email and is readable through
support_ticket_status, in the same conversation.
What it looks like in code
import { withSupport } from "@canhelpto/mcp-support";
// Adds support_ask, support_open_ticket and support_ticket_status to your server,
// records the last calls of each account, and adds a support hint to every tool error.
withSupport(server, {
apiKey: process.env.CANHELPTO_API_KEY,
product: "Acme Reports", // an example name
user: (extra) => ({ id: extra.userId, email: extra.email, name: extra.name }),
rules: [{ match: /credit/i, answer: "Your balance is shown in Account > Billing." }],
});Other languages use the same three tools over the REST API.
Questions
- Why does an MCP server need one?
- Users of an MCP server work inside their AI client. They never open your web app or your help desk. When a tool fails, the only place they can ask for help is the conversation they are already in.
- What tools does it add?
- Three: support_ask answers from your own rules, support_open_ticket opens a ticket with the connector context attached, and support_ticket_status reads the ticket and the team's public replies back.
- Is it a chatbot?
- No. support_ask answers from rules you write in code, with no model call, and says so when it does not know. A person answers tickets.
Step by step: add support to your MCP server and handle tool errors. The calls are in the docs for agents. Plans are on the pricing page.