helpscout_docs_ create_ articleCreate a Docs article.
Triage and reply to conversations, set tags and custom fields, pull a customer's full history, publish Docs articles, and read happiness and productivity reports.
PopMCPHelp Scout
Every read and write across conversations, customers, inboxes, Docs and reports, plus the webhook triggers an agent can subscribe to.
helpscout_docs_ create_ articleCreate a Docs article.
helpscout_docs_ create_ collectionCreate a Docs collection.
helpscout_docs_ get_ articleRetrieve a Docs article by id (or number).
helpscout_docs_ get_ collectionRetrieve a Docs collection by id (or number).
helpscout_docs_ list_ collection_ articlesList the articles in a Docs collection (returns abbreviated ArticleRef objects).
helpscout_docs_ list_ collectionsList Docs collections.
helpscout_docs_ search_ articlesSearch Docs articles (returns ArticleSearch objects with preview/docsUrl).
helpscout_docs_ update_ articleUpdate a Docs article.
helpscout_report_ company_ overallRetrieve the Company Overall report (top-line metrics).
helpscout_report_ conversations_ overallRetrieve the Conversations Overall report.
helpscout_report_ happiness_ overallRetrieve the Happiness Overall report (satisfaction ratings).
helpscout_report_ productivity_ overallRetrieve the Productivity Overall report.
helpscout_create_ customerCreate a customer.
helpscout_create_ customer_ emailAdd an email to a customer.
helpscout_create_ customer_ phoneAdd a phone to a customer.
helpscout_get_ customerRetrieve a single customer by id, including embedded emails, phones, chats, social profiles, websites, address, and properties.
helpscout_list_ customersList customers, optionally filtered by name, modified date, inbox, or advanced search query.
helpscout_overwrite_ customerOverwrite a customer's CORE fields (full replace).
helpscout_update_ customerUpdate a customer partially via JSON-Patch (only the fields you include change).
helpscout_create_ conversationCreate a conversation (ticket).
helpscout_create_ thread_ customerAdd a customer thread (an inbound customer message) to a conversation.
helpscout_create_ thread_ noteAdd an internal note thread to a conversation (not visible to the customer).
helpscout_create_ thread_ replyAdd a reply thread (an outbound agent message) to a conversation.
helpscout_delete_ conversationDelete a conversation by id.
helpscout_get_ conversationRetrieve a single conversation by id, including status, assignee, primary customer, tags, custom fields, and source.
helpscout_list_ conversation_ threadsList the threads (messages, notes, line-items) in a conversation, newest first.
helpscout_list_ conversationsList conversations in the account, optionally filtered by mailbox, folder, status, tag, assignee, modified date, or advanced search query.
helpscout_update_ conversationUpdate a conversation via a single JSON-Patch operation (change subject, status, assignee, inbox, primary customer, or publish a draft).
helpscout_update_ conversation_ fieldsSet the custom field values on a conversation.
helpscout_update_ conversation_ tagsSet the tags on a conversation.
helpscout_create_ webhookCreate a webhook subscription.
helpscout_delete_ webhookDelete a webhook by id.
helpscout_get_ webhookRetrieve a single webhook by id.
helpscout_list_ webhooksList the account's webhooks (the `secret` is never returned).
helpscout_get_ mailboxRetrieve a single inbox (mailbox) by id.
helpscout_list_ mailbox_ fieldsList an inbox's custom field DEFINITIONS.
helpscout_list_ mailbox_ foldersList the folders in an inbox (e.g.
helpscout_list_ mailboxesList the inboxes (mailboxes) in the account.
helpscout_get_ meRetrieve the authenticated user (the owner of the OAuth token).
helpscout_get_ userRetrieve a single user (agent) by id.
helpscout_list_ usersList the users (agents) in the account, including those who have not yet accepted their invitations.
helpscout_list_ team_ membersList the members (users) of a team.
helpscout_list_ teamsList the teams in the account (Plus/Pro plans).
helpscout_list_ workflowsList the account's workflows (manual and automatic).
helpscout_run_ workflowRun a MANUAL workflow against a set of conversations (max 50 ids; all must belong to the same inbox as the workflow).
helpscout_list_ tagsList all tags in the account, alphabetically.
helpscout_docs_ create_ categoryCreate a Docs category.
helpscout_docs_ create_ redirectCreate a Docs redirect.
helpscout_docs_ create_ siteCreate a Docs site.
helpscout_docs_ delete_ articleDelete a Docs article by id.
helpscout_docs_ delete_ article_ draftDelete an article's draft.
helpscout_docs_ delete_ categoryDelete a Docs category by id.
helpscout_docs_ delete_ collectionDelete a Docs collection by id.
helpscout_docs_ delete_ redirectDelete a Docs redirect by id.
helpscout_docs_ delete_ siteDelete a Docs site by id.
helpscout_docs_ find_ redirectFind the final destination of a redirect for a source URL (follows the full chain).
helpscout_docs_ get_ article_ revisionRetrieve a single article revision by REVISION id (full ArticleRevision incl.
helpscout_docs_ get_ categoryRetrieve a Docs category by id (or number).
helpscout_docs_ get_ redirectRetrieve a single redirect by id.
helpscout_docs_ get_ siteRetrieve a Docs site by id.
helpscout_docs_ list_ article_ revisionsList an article's revisions (ArticleRevisionRef — no text field).
helpscout_docs_ list_ category_ articlesList the articles in a Docs category (returns abbreviated ArticleRef objects).
helpscout_docs_ list_ collection_ categoriesList the categories in a Docs collection.
helpscout_docs_ list_ redirectsList the redirects for a Docs site.
helpscout_docs_ list_ related_ articlesList articles related to a given article (returns ArticleRef objects).
helpscout_docs_ list_ sitesList Docs sites.
helpscout_docs_ save_ article_ draftCreate or update an article's draft without touching the published version.
helpscout_docs_ update_ article_ viewsIncrement an article's view count (feeds popularity).
helpscout_docs_ update_ categoryUpdate a Docs category (full object; name required).
helpscout_docs_ update_ category_ orderReorder categories within a collection.
helpscout_docs_ update_ collectionUpdate a Docs collection (full object; name required).
helpscout_docs_ update_ redirectUpdate a Docs redirect (siteId, urlMapping, redirect all required).
helpscout_docs_ update_ siteUpdate a Docs site (full object; subDomain + title still required).
helpscout_report_ chatRetrieve the Chat channel report (Beacon-native chats).
helpscout_report_ company_ customers_ helpedRetrieve the Company Customers Helped report.
helpscout_report_ company_ drilldownRetrieve the Company Drilldown report (conversation-level rows).
helpscout_report_ conversations_ busy_ timesRetrieve the Busiest Time of Day report.
helpscout_report_ conversations_ drilldownRetrieve the Conversations Drilldown report (conversation-level rows).
helpscout_report_ conversations_ fields_ drilldownRetrieve the Conversations Drilldown by Field report.
helpscout_report_ conversations_ newRetrieve the New Conversations report.
helpscout_report_ conversations_ new_ drilldownRetrieve the New Conversations Drilldown report.
helpscout_report_ conversations_ received_ messagesRetrieve the Received Messages Statistics report (customer-initiated messages only).
helpscout_report_ conversations_ volume_ by_ channelRetrieve the Conversations Volume by Channel report.
helpscout_report_ docs_ overallRetrieve the Docs Overall report.
helpscout_report_ emailRetrieve the Email channel report.
helpscout_report_ happiness_ ratingsRetrieve the Happiness Ratings report (per-rating drilldown).
helpscout_report_ phoneRetrieve the Phone channel report.
helpscout_report_ productivity_ first_ response_ timeRetrieve the First Response Time report.
helpscout_report_ productivity_ replies_ sentRetrieve the Replies Sent report.
helpscout_report_ productivity_ resolution_ timeRetrieve the Resolution Time report.
helpscout_report_ productivity_ resolvedRetrieve the Resolved report.
helpscout_report_ productivity_ response_ timeRetrieve the Response Time report.
helpscout_report_ user_ chatRetrieve the User/Team Chat report.
helpscout_report_ user_ conversation_ historyRetrieve the User Conversation History report (one row per reply — duplicate conversation entries are possible).
helpscout_report_ user_ customers_ helpedRetrieve the User Customers Helped report.
helpscout_report_ user_ drilldownRetrieve the User Drilldown report (conversation-level rows).
helpscout_report_ user_ happinessRetrieve the User Happiness report.
helpscout_report_ user_ overallRetrieve the User (or Team) Overall report.
helpscout_report_ user_ ratingsRetrieve the User Happiness Ratings (drilldown) report.
helpscout_report_ user_ repliesRetrieve the User Replies report.
helpscout_report_ user_ resolutionsRetrieve the User Resolutions report.
helpscout_create_ customer_ addressSet a customer's address (singleton — at most one per customer).
helpscout_create_ customer_ chatAdd a chat handle to a customer.
helpscout_create_ customer_ social_ profileAdd a social profile to a customer.
helpscout_create_ customer_ websiteAdd a website to a customer.
helpscout_delete_ customer_ addressDelete a customer's address.
helpscout_delete_ customer_ chatDelete a customer's chat handle by id.
helpscout_delete_ customer_ emailDelete a customer's email by id.
helpscout_delete_ customer_ phoneDelete a customer's phone by id.
helpscout_delete_ customer_ social_ profileDelete a customer's social profile by id.
helpscout_delete_ customer_ websiteDelete a customer's website by id.
helpscout_list_ customer_ chatsList a customer's chat handles.
helpscout_list_ customer_ emailsList a customer's emails.
helpscout_list_ customer_ phonesList a customer's phones.
helpscout_list_ customer_ social_ profilesList a customer's social profiles.
helpscout_list_ customer_ websitesList a customer's websites.
helpscout_update_ customer_ addressUpdate a customer's address (full replace of the singleton).
helpscout_update_ customer_ chatUpdate a customer's chat handle by id (full replace).
helpscout_update_ customer_ emailUpdate a customer's email by id (full replace).
helpscout_update_ customer_ phoneUpdate a customer's phone by id (full replace).
helpscout_update_ customer_ propertiesSet or clear a customer's custom properties via JSON-Patch.
helpscout_update_ customer_ social_ profileUpdate a customer's social profile by id (full replace).
helpscout_update_ customer_ websiteUpdate a customer's website by id (full replace).
helpscout_create_ thread_ chatAdd a chat thread to a conversation.
helpscout_create_ thread_ phoneAdd a phone thread to a conversation.
helpscout_delete_ attachmentDelete an attachment.
helpscout_delete_ conversation_ snoozeRemove a conversation's snooze and re-file it based on assignee.
helpscout_get_ attachment_ dataRetrieve an attachment's contents as base64.
helpscout_get_ thread_ original_ sourceRetrieve the original source (raw message) of a thread.
helpscout_update_ conversation_ customerSet the primary customer of a conversation.
helpscout_update_ conversation_ snoozeSnooze a conversation until a future time.
helpscout_update_ thread_ textEdit a thread's text or hide/unhide it via JSON-Patch.
helpscout_update_ webhookUpdate a webhook (full replacement — url, events, and secret are required again).
Credentials off one Help Scout screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.
In Help Scout: Your Profile → My Apps → Create My App. Paste the App ID and App Secret — no redirect, callback URL or consent screen. Add the optional Docs API Key for articles. The app is locked to that one account.
Your Help Scout App ID••••••••••••3f7a••••••••••••3f7aRead-only is enough for reporting. If you grant writes, require approval so an outbound reply, a deleted conversation or an overwritten customer record waits for a human. Turn on the full catalog for the rarer tools.
Drop the PopMCP URL into Claude, ChatGPT, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Help Scout credential never leaves the server.
app.popmcp.com/mcp/…Ask for something harmless before you turn writes on. Once it comes back clean, widen the tool set or switch the connection to full access.
Show me last week's happiness ratings and how the team's productivity moved
helpscout_report_happiness_overallok
Then just ask for the work
“Show me last week's happiness ratings and how the team's productivity moved”
“Tag every unassigned billing conversation in the Support inbox as refund-risk”
“Open a ticket for this outage report and drop an internal note with the repro steps”
“What has Dana Whitfield emailed us about, and is any of it covered in Docs?”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Help Scout behind an AI client.
Two values you create in Help Scout under Your Profile → My Apps → Create My App: App ID and App Secret. PopMCP exchanges them server-side over HTTPS for a short-lived access token using the Client Credentials flow, so there is no OAuth redirect, callback URL, consent screen or periodic re-authentication to babysit. Because the app is owned by a single Help Scout account, the server can only ever act inside that account.
No — it is the one optional field on the connect form. Without it you still get the full Mailbox API 2.0 surface: conversations with their threads, replies, notes, tags, custom fields and attachments, plus customers, inboxes and folders, users, teams, tags, workflows, webhooks and reports. Add the Docs API Key when you want the agent to search, read, create and update knowledge base articles, and list or create collections.
133 operations across 10 API modules, split 73 read and 60 write. 46 load into your AI client by default and the rest stay searchable, so clients with a tool-count ceiling are not swamped by the long tail. Docs, Reports, Customers and Conversations are the four biggest modules.
Because the Mailbox API 2.0 takes JSON-Patch and the tools mirror it exactly. helpscout_update_conversation applies a single JSON-Patch operation per call — subject, status, assignee, inbox, primary customer, or publishing a draft — so changing two things is two calls. On the customer side, helpscout_update_customer changes only the fields you include, while helpscout_overwrite_customer replaces the core fields outright.
Yes, through dedicated tools rather than the general update call: helpscout_update_conversation_tags sets a conversation's tags and helpscout_update_conversation_fields sets its custom field values. Custom field definitions are defined per inbox, and helpscout_list_mailbox_fields returns those definitions so an agent can check what a field expects before writing to it. helpscout_get_conversation returns the conversation's current tags and custom fields, which is the natural first step before changing either.
These triggers are webhook-backed: conversation created, assigned, status changed, tags changed and fields changed; customer replied, teammate replied and internal note added; customer created, updated and deleted; happiness rating received; and tag created and deleted. The agent can administer the subscriptions themselves with helpscout_list_webhooks, helpscout_create_webhook, helpscout_get_webhook and helpscout_delete_webhook. One quirk worth knowing: helpscout_list_webhooks never returns a webhook's secret, so an agent cannot read one back out.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Loading 133 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 46-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.
A tool is something your AI calls — there are 133 here. A trigger is something PopMCP watches for you: 20 Help Scout events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Help Scout.
Launch a hosted MCP endpoint for Help Scout, keep tool access under control, and start testing real workflow prompts right away.