heap_add_ user_ propertiesSet custom properties on one user in Heap, such as Sign Up Date or Total Spent.
Ask how a metric moved against the previous period and get aggregated numbers back, or send events, user properties and account properties into Heap.
PopMCPHeap
Sign in with Heap and your AI can find the events, segments and properties that match a question, run the analysis and explain the result. Heap returns aggregated numbers and no personal details, and that connection cannot change anything. A separate connection made with an App ID and API key can send server-side events, set user and account properties and handle user deletion requests. It only sends, because Heap's server-side API has no way to read.
11 tools in the full catalog: 2 read and 9 write. 11 load by default, and the rest are found with tool search.
heap_add_ user_ propertiesSet custom properties on one user in Heap, such as Sign Up Date or Total Spent.
heap_bulk_ add_ user_ propertiesSet custom properties on up to 1000 users in Heap in one request.
heap_identify_ userTie an anonymous Heap user to a known identity, such as an email address.
heap_add_ account_ propertiesSet custom properties on one account (company) in Heap, such as payment tier or account owner.
heap_bulk_ add_ account_ propertiesSet custom properties on up to 1000 accounts in Heap in one request.
heap_call_ toolOn a signed-in connection, run any Heap tool by name: find events and segments, and run an analysis.
heap_delete_ usersPERMANENTLY delete users and all their data from every environment of this Heap account, for privacy requests such as GDPR erasure.
heap_get_ deletion_ statusCheck an user deletion request in Heap.
heap_list_ toolsOn a signed-in connection, list the tools Heap offers for asking about your data, with their parameters.
heap_track_ eventSend one custom event to Heap from the server, such as a completed order or a sent email.
heap_track_ eventsSend up to 1000 custom events to Heap in one request.
Authorize once, then an endpoint your client signs into. Nothing to deploy, and nothing to install on the Heap side.
Open Heap in PopMCP, click Sign in with Heap, sign in and approve. There is no developer app and no callback URL to set up. If you use eu.heapanalytics.com, type EU under More options first. To send data or delete users, enter your App ID and API key under More options instead: a Heap admin finds both under Account, Manage, Privacy & Security.
your-heap-valueUS1234567890A signed-in connection only reads aggregated numbers. Sending events, setting properties and deleting users wait until an owner or admin allows write actions in PopMCP, and new connections start read-only. Sent events cannot be taken back. Deleting a user is permanent and covers every environment, so your AI has to confirm it first.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Heap credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
How did sign-ups trend over the last 30 days compared with the previous 30?
heap_list_toolsok
Then just ask for the work
“How did sign-ups trend over the last 30 days compared with the previous 30?”
“Which events and properties in Heap could tell me how many people finished onboarding?”
“How active was my Enterprise segment over the last 90 days?”
“Send an Order Completed event to Heap for alice@example.com with a total of 49.50”
“Load these past orders into Heap as events, without double counting if it has to retry”
“Set Plan to Pro on these users, and add the payment tier and owner to their account”
“Delete alice@example.com from Heap for a privacy request and tell me when it is done”
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 Customize → 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 Heap behind an AI client.
Not to ask questions. You click Sign in with Heap, sign in and approve. An App ID and API key are only for sending data or deleting users, and a Heap admin finds them under Account, Manage, Privacy & Security.
They reach different things. Signing in reads aggregated numbers and cannot change anything. An App ID and API key send data and delete users and cannot read. One connection is one or the other, so add a second connection to have both.
No. Heap returns aggregated numbers and metadata, with no emails, names or other personal identifiers. Saved charts, dashboards and session replays are not reachable either, so it runs new analyses.
Today, yesterday, the last 7, 30 or 90 days, or the year, with a comparison to the previous period. Heap says custom and all-time ranges are still to come.
To sign in, a Heap account with access to Heap MCP. If no tools appear, look under Integrations, then MCP, in Heap, or ask your Heap admin. An API key can only be made by an admin.
Yes. Type EU under More options before you connect. It sends your sign-in and your data to Heap's EU servers. You are on the EU data center if you sign in to Heap at eu.heapanalytics.com.
Yes, for sending. Connect with your App ID and API key, and put the development environment's ID in the Send events to another environment box. Heap cannot confirm that ID is yours, so check it before you send.
Not if it carries an idempotency key, and your AI is told to set one. PopMCP never repeats a send by itself, and a sent event cannot be taken back.
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, Claude Code, 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.
Connect Heap in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Heap on the consent screen. The Heap tools are then available in that session, and no Heap credential is stored on your machine.
Yes. The Heap catalog is small enough that all 11 tool definitions load into every conversation, so your AI never has to search for one before it can call it.
A tool is something your AI calls, and there are 11 here. A trigger is an event PopMCP watches for on its own. Heap has no triggers yet, so everything on this page happens when your AI calls a tool.
Launch a hosted MCP endpoint for Heap, keep tool access under control, and start testing real workflow prompts right away.