Skip to content

MCP helpdesk for Claude Code, Codex and Cursor The agent that built your app can run its support.

Helmdesk is a helpdesk with an MCP server: 73 tools over tickets, customers, transactional email, the knowledge base, feedback and error logs. Your agent reads the queue, drafts the replies and writes the docs. Nothing reaches a customer until you say so.

Start freeAdd to your agentFree for your first app. No card.

Through Nov 30: 30% off Starter or Growth for 3 months with code SHIP30 at checkout.

claude — ~/code/ledgerly
  1. You: Anything waiting for me on Ledgerly this morning?
  2. get_project_overview(project: "ledgerly")38 open · 7 awaiting a reply · 2 open errors
  3. list_agent_activity(project: "ledgerly")Auto-Responder drafted a reply to #69 "Client says the payment link is expired"
  4. list_tickets(project: "ledgerly", awaitingReply: true)#73 "Can I send recurring invoices?" · Priya Raman · 18m
  5. search_articles(project: "ledgerly", query: "recurring invoices")No published article covers it
  6. Agent: Two things. A drafted reply to #69 is waiting for your approval; it cites "Why is a payment link expired?". And #73 asks about recurring invoices, which the knowledge base does not cover. Want me to send the #69 draft and write an article for #73?
  7. You: Send the draft. Write the article, but leave it as a draft.
  8. approve_agent_item(logId: "…")Reply posted to #69 and emailed to Rafael Costa
  9. create_article(project: "ledgerly", title: "Send recurring invoices", status: "draft")Draft saved. Not on the help centre until you publish it.
An example session against the demo workspace. The tool names are the real ones; their results are summarised.

What your agent can reach

73 tools. The whole desk, not just the inbox.

Tickets are one part of support. The same server reaches the customer directory, the email log, the knowledge base, feedback and the errors your app ships, for every project on the account.

  • Tickets

    • list_tickets
    • get_ticket
    • reply_to_ticket
    • add_ticket_note
  • Customers

    • get_customer
    • list_customers
    • set_customer_tags
  • Email

    • send_email
    • list_email_sends
    • list_suppressions
  • Knowledge base

    • search_articles
    • create_article
    • update_article
  • Feedback

    • request_feedback
    • list_feedback_conversations
  • Errors

    • list_log_issues
    • query_logs
    • set_log_issue_status
  • Projects

    • create_project
    • get_project
    • create_api_key
  • Review queue

    • list_agent_activity
    • approve_agent_item
    • revert_agent_item

See all 73 tools · Prompt cookbook

Guardrails

It drafts. You approve.

An agent with access to your customers needs limits it cannot talk its way around. These are enforced by the server and the key, not by the prompt.

  • Drafts wait for you

    The built-in Auto-Responder only proposes. Its drafted replies and articles sit in Agents Activity until you approve them, and approving is what sends.

  • Every tool says what it does

    28 tools are marked read-only, so your client can let lookups run without asking. The 10 that can reach a customer are marked destructive and open-world: the signal a client uses to ask you first.

  • The key sets the limits

    Give the agent a key with only the scopes it needs (tickets:read but not emails:send, say) and only the projects it should touch.

  • Try it in sandbox first

    A sandbox key, or environment: "sandbox" on a single call, runs the flow on separate data. Emails are captured, never delivered.

The review queue

Everything your agents did, waiting for a yes.

Drafted replies, drafted articles, auto-closed tickets and error alerts land in one inbox. Approve sends or publishes; revert undoes. Your coding agent reads and works the same queue.

list_agent_activity · approve_agent_item · revert_agent_item

helmdesk.dev/agents-activity
Agents Activity: a new ticket to reply to and Log Watch error alerts, each with Got it and Edit buttons

Errors

Ask what broke, and get the tickets it caused.

Your app ships errors with one SDK call. They are grouped into issues, and the agent can read them, acknowledge them and line them up against new tickets.

list_log_issues · query_logs · set_log_issue_status

helmdesk.dev/projects/pixelforge/logs
The Errors page: error issues grouped by fingerprint with counts and when they were first and last seen

Setup

One command in the agent you already use.

Create an API key in Helmdesk, then add the server. Full guides, including per-project config and Claude Desktop, are in the docs.

Claude Code

Guide
terminal
claude mcp add --env HELMDESK_API_KEY=sk_live_… \
  --transport stdio helmdesk -- npx -y @helmdesk/mcp

Codex

Guide
terminal
codex mcp add helmdesk \
  --env HELMDESK_API_KEY=sk_live_… -- npx -y @helmdesk/mcp

Cursor

Guide
~/.cursor/mcp.json
{
  "mcpServers": {
    "helmdesk": {
      "command": "npx",
      "args": ["-y", "@helmdesk/mcp"],
      "env": { "HELMDESK_API_KEY": "sk_live_…" }
    }
  }
}

Pricing

Priced by apps and tickets, not by people.

Free for your first app. Starter $39/mo for 3 apps, unlimited seats.

The MCP server, the SDK and the REST API come with every plan. AI agents and drafted replies are on Starter and above.

Annual billing saves 20%. No per-seat fees on paid plans, no per-resolution AI fees.

Through Nov 30: 30% off Starter or Growth for 3 months with code SHIP30 at checkout.

  • Free1 app$0
  • Starter3 apps$39/mo
  • Growth10 apps$149/mo
  • Enterprise: more apps and volume, quoted. Talk to us

FAQ

Running support from your coding agent

Which agents and clients does it work with?

Any MCP client. There are setup guides for Claude Code, Codex, Cursor and Claude Desktop. The server is the npm package @helmdesk/mcp, run with npx.

Can the agent email my customers without asking?

Only if you let it. The 10 tools that reach a customer are annotated as destructive and open-world, which is what MCP clients use to ask before running a tool. And a key without emails:send, tickets:write, feedback:write and agents:review cannot reach a customer at all.

Does it work across several apps?

Yes. An all-projects key reaches every app on the account, and each call names its project. If the agent has not been told which app you mean, the server refuses and lists the choices instead of guessing.

Is the MCP server an extra cost?

No. The MCP server, the SDK and the REST API come with every plan, Free included.

One instruction, and your app has support.

Free for your first app. Starter $39/mo for 3 apps, unlimited seats. No card.