We raised a $50M Series B led by BenchmarkLearn more
Mixpanel logo — MCP server on Gumloop

Mixpanel

Query your Mixpanel product analytics and user events.

Book a demo

Installation

Set up the Mixpanel MCP server in Gumloop

Do this once to provision your hosted server URL.

1

Create a Gumloop account

To use this MCP, you need a Gumloop account. If you don't have one yet, sign up and start a 14-day free trial.

2

Add and authorize the Mixpanel server

In Gumloop, open Connectors and add Mixpanel. Depending on the app, you'll either sign in via OAuth or paste an API key. Either way, the credential is stored securely in Gumloop.

Then use it in your client

Use in GumloopUse in Gumloop
1

Use Mixpanel in an agent

Once Mixpanel is set up, just open any Gumloop agent, add Mixpanel as a connector, and start chatting with the agent.

Tools (63)

  • Get-Projects

    If you have not yet called Get-Business-Context this conversation, call it FIRST — it may resolve project nicknames, acronyms, or org-specific terms in the user's request and tell you which project to pick without listing them. Get projects that are accessible to current user. Returns the project's id, name, workspaces and context. Use this and prompt the user to select a project from the available projects.

  • Get-Events

    Get events for a Mixpanel project. Two lookup modes (mutually exclusive): - event_names: Look up specific events by exact name. Lightweight server-side filter. - query: Search/discover events by substring match (case-insensitive). Fetches all events. include_details: When True, return full event metadata (tags, description, display_name, verified, hidden, dropped) for each event. Set to false if no details are needed, to keep the response compact. tag: Filter to events that have this tag name. verified/hidden/dropped: Filter by metadata status (True or False). Results are ordered verified-first. Prefer verified events (verified=True) when choosing events that match the user's request; fall back to unverified events only when no verified event fits. Unverified events are still returned and may be used. Each event's verified status is included in the response (set include_details=True for full metadata).

  • Edit-Event

    Use contact_emails or team_contact_names for ownership. Set verified=True to verify/approve events, hidden=True to hide from UI, dropped=True to deprecate.

  • Bulk-Edit-Events

    Edit multiple events at once. Supports two modes: 1. Uniform fields (applied to ALL events): hidden, verified, dropped, tags, contact_emails, team_contact_names. 2. Per-event fields (on individual events in the events list): description, display_name. Both modes can be combined in a single call. Maximum 50 events per call.

  • List-Properties

    List properties for a Mixpanel project. Returns name and type by default. Two lookup modes (mutually exclusive): - names: Look up specific properties by exact name (max 100). - query: Search/discover properties by substring match (case-insensitive). resource_type: 'Event' for event properties, 'User' for user properties, or omit for both. events: Scope to one or more events' properties (only valid with resource_type='Event' or omitted). attributes: Extra attributes to include in the response. Valid values: description, display_name, hidden, dropped, sensitive, example_value, merged, tags, events. The 'events' attribute is only allowed when 'names' is provided — it requires a specific set of properties to look up event associations for. It is also expensive for large projects, so only request it when needed. tag: Filter to properties that have this tag name. hidden/dropped/sensitive: Filter by metadata status (True or False).

  • Get-Property-Values

    Get values for one or more properties, returned as a table. properties: one or more property names. With a single property the result is a one-column table of its distinct values. With multiple Event properties the result has one column per property so you can see which values co-occur on the same events. Prefer this over the deprecated single-string 'property' alias. property: DEPRECATED alias for a single-element 'properties'. Use 'properties' instead. Passing both 'property' and 'properties' with conflicting values is an error. result_mode (Event properties only): - 'grouped' (default): deduped combinations of the property values with a 'count' column, sorted by count descending. - 'expanded': one row per event occurrence, with a 'time' column, sorted by time. Use this to inspect raw, high-cardinality values (e.g. free-text) alongside their co-occurring properties. limit: maximum rows to return (default 100, max 1000). When results are truncated a trailing note row makes the cap explicit. from_date / to_date (YYYY-MM-DD): query window for the returned values. For the multi-property and expanded paths this defaults to the trailing ~30 days; for the single-property distinct-values path, omitting it falls back to the server's default trailing window. For Event properties, the 'event' parameter is required. User properties support only a single property in grouped mode.

  • Edit-Property

    Set sensitive=True for PII data classification. Set example_value to populate the example shown in Lexicon.

  • Bulk-Edit-Properties

    Edit multiple properties at once. Supports two modes: 1. Uniform fields (applied to ALL properties): hidden, dropped, sensitive, tags. 2. Per-property fields (on individual entries in the properties list): description, display_name, example_value. Both modes can be combined in a single call. All properties must share the same resource_type ("Event" or "User"). Maximum 50 properties per call.

  • Create-Custom-Property

    Create a formula-based custom property (a computed event or user property) in a project. Define it with a `display_formula` expression that references named `composed_properties` variables (_A, _B, ...). Every property used in the formula must be mapped in `composed_properties` — use List-Properties to find the properties to compose. `resource_type` is 'events' or 'people'. The created property appears in Lexicon and is usable in reports.

  • Update-Custom-Property

    Update an existing formula-based custom property. Partial update: pass only the fields you want to change (`name`, `description`, `display_formula`, `composed_properties`); omitted fields keep their current value. When changing `display_formula` you must also pass the complete `composed_properties` mapping for it. `resource_type` is immutable. Use Get-Custom-Property first to see the current definition.

  • Get-Custom-Property

    Get a custom property by id, including its full definition (behavior or display_formula + composed_properties). Use this before Update-Custom-Property to see the current definition. Custom property ids come from List-Properties (custom properties are named '$custom_property:<id>').

  • Get-Lookup-Table

    Read a lookup table by id or name, or list all lookup tables. Provide `data_group_id` or `name` to get one table's schema (columns), row count, and a capped preview of its rows. Omit both to list every lookup table in the project (metadata only) — useful for discovering table names/ids. The `id` returned for each table is the `data_group_id` you pass back to this tool or to Update-Lookup-Table. The preview is capped by `preview_limit` (default 100) and may be smaller than `row_count` — it is a sample, not the full table. Use it to inspect the schema and existing values; to change rows, send only the rows you want to add/overwrite (`upsert_rows`) or remove (`delete_keys`) to Update-Lookup-Table, which applies the delta to the full table for you.

Ship Mixpanel agents in minutes

Connect any AI agent to 100+ MCP servers, zero setup.
Book a demo
Gradient