{"openapi":"3.1.0","info":{"title":"Mixpanel (BYOK) API","version":"0.1.0","description":"Mixpanel (BYOK) lets an AI assistant read your own Mixpanel data through the Mixpanel API with a key you supply (service account username). Read-only: 6 tools (get_todays_top_events, list_top_event_names, get_event_counts, get_event_top_properties, get_event_property_values, get_insights_report). The BYOK key travels with each request, is used for that one call only and is never stored, logged or...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-mixpanel.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-mixpanel/docs"},"termsOfService":"https://connectorbay.com/byok-mixpanel/terms"},"servers":[{"url":"https://byok-mixpanel.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-mixpanel/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_todays_top_events":{"post":{"operationId":"get_todays_top_events","summary":"Get today's most frequent events with their counts and the percent change from yesterday. Query API limits: 60 queries p","description":"Get today's most frequent events with their counts and the percent change from yesterday. Query API limits: 60 queries per hour, 5 at a time. Use for \"What are my top Mixpanel events today\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Numeric Mixpanel project ID (shown in the project settings and in the project URL).","minimum":1,"title":"Project Id","type":"integer"},"type":{"description":"Counting method: general (total events), unique (unique users) or average.","enum":["general","unique","average"],"title":"Type","type":"string"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Maximum number of events to return (1 to 100).","title":"Limit"}},"required":["project_id","type"],"title":"get_todays_top_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_top_event_names":{"post":{"operationId":"list_top_event_names","summary":"List the most common event names of the last 31 days. Use for \"Which events does my Mixpanel project track most\".","description":"List the most common event names of the last 31 days. Use for \"Which events does my Mixpanel project track most\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Numeric Mixpanel project ID (shown in the project settings and in the project URL).","minimum":1,"title":"Project Id","type":"integer"},"type":{"description":"Counting method: general (total events), unique (unique users) or average.","enum":["general","unique","average"],"title":"Type","type":"string"},"limit":{"anyOf":[{"maximum":255,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Maximum number of names to return (1 to 255).","title":"Limit"}},"required":["project_id","type"],"title":"list_top_event_namesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_event_counts":{"post":{"operationId":"get_event_counts","summary":"Get total, unique or average counts of one or more events per day, week or month between two dates (or for the last N un","description":"Get total, unique or average counts of one or more events per day, week or month between two dates (or for the last N units). Use for \"How many sign-ups and logins did I get per day last week in Mixpanel\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Numeric Mixpanel project ID (shown in the project settings and in the project URL).","minimum":1,"title":"Project Id","type":"integer"},"event":{"description":"One or more event names as a JSON array, for example [\"Signed up\",\"Logged in\"].","maxLength":1000,"title":"Event","type":"string"},"type":{"description":"Counting method: general (total events), unique (unique users) or average.","enum":["general","unique","average"],"title":"Type","type":"string"},"unit":{"description":"Granularity: minute, hour, day, week or month (no hourly uniques).","enum":["minute","hour","day","week","month"],"title":"Unit","type":"string"},"from_date":{"description":"First day, yyyy-mm-dd (inclusive). Use with to_date.","maxLength":10,"title":"From Date","type":"string"},"to_date":{"description":"Last day, yyyy-mm-dd (inclusive).","maxLength":10,"title":"To Date","type":"string"}},"required":["project_id","event","type","unit","from_date","to_date"],"title":"get_event_countsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_event_top_properties":{"post":{"operationId":"get_event_top_properties","summary":"Get the most common property names of one event with how many events carry each. Use for \"Which properties does the Sign","description":"Get the most common property names of one event with how many events carry each. Use for \"Which properties does the Signed up event have in Mixpanel\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Numeric Mixpanel project ID (shown in the project settings and in the project URL).","minimum":1,"title":"Project Id","type":"integer"},"event":{"description":"A single event name, for example 'Signed up'.","maxLength":255,"title":"Event","type":"string"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"Maximum number of properties to return (1 to 100).","title":"Limit"}},"required":["project_id","event"],"title":"get_event_top_propertiesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_event_property_values":{"post":{"operationId":"get_event_property_values","summary":"Get the most common values of one property of one event. Use for \"What plan values appear on the Signed up event in Mixp","description":"Get the most common values of one property of one event. Use for \"What plan values appear on the Signed up event in Mixpanel\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Numeric Mixpanel project ID (shown in the project settings and in the project URL).","minimum":1,"title":"Project Id","type":"integer"},"event":{"description":"A single event name, for example 'Signed up'.","maxLength":255,"title":"Event","type":"string"},"name":{"description":"Name of the property, for example 'plan'.","maxLength":255,"title":"Name","type":"string"},"limit":{"anyOf":[{"maximum":255,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Maximum number of values to return (1 to 255).","title":"Limit"}},"required":["project_id","event","name"],"title":"get_event_property_valuesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_insights_report":{"post":{"operationId":"get_insights_report","summary":"Get the data of one saved Insights report (series per event over time) by its numeric report (bookmark) ID. Use for \"Sho","description":"Get the data of one saved Insights report (series per event over time) by its numeric report (bookmark) ID. Use for \"Show the data of my saved Mixpanel Insights report 12345\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Numeric Mixpanel project ID (shown in the project settings and in the project URL).","minimum":1,"title":"Project Id","type":"integer"},"bookmark_id":{"description":"Numeric ID of the saved Insights report (the number after 'report-' in the report's URL).","minimum":1,"title":"Bookmark Id","type":"integer"}},"required":["project_id","bookmark_id"],"title":"get_insights_reportArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}