mixpanel
Query Mixpanel events, funnels, retention, segmentation and insights (JQL).
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"mixpanel": {
"url": "https://mixpanel.usefulapi.io/mcp"
}
}
}원격 엔드포인트
https://mixpanel.usefulapi.io/mcpstreamable-http할 수 있는 일
도구 목록
도구 (7)
🟢mixpanel_top_events(type, limit)
List today's top events with counts and % change vs yesterday. Good first call to discover what events a project tracks. Query API: GET /events/top.
입력 스키마
{
"type": "object",
"properties": {
"type": {
"description": "general (totals), unique (per-user), or average. Default general.",
"type": "string",
"enum": [
"general",
"unique",
"average"
]
},
"limit": {
"description": "Max events to return. Default 100.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mixpanel_segmentation(event, from_date, to_date, on, where, ...)
Count/segment/filter a single event over a date range. e.g. 'Signed up' by country last week. Params `on`/`where` use Mixpanel segmentation expressions like properties["$country_code"]. Query API: GET /segmentation. (Upstream maintenance mode — for saved reports prefer mixpanel_query_insights.)
입력 스키마
{
"type": "object",
"properties": {
"event": {
"type": "string",
"description": "Single event name to analyze (not an array)."
},
"from_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date yyyy-mm-dd (inclusive)."
},
"to_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date yyyy-mm-dd (inclusive)."
},
"on": {
"description": "Property expression to segment on, e.g. properties[\"$city\"].",
"type": "string"
},
"where": {
"description": "Filter expression, e.g. properties[\"$os\"]==\"iOS\".",
"type": "string"
},
"unit": {
"description": "Bucket size. Default day.",
"type": "string",
"enum": [
"minute",
"hour",
"day",
"month"
]
},
"type": {
"description": "general | unique | average. Default general.",
"type": "string",
"enum": [
"general",
"unique",
"average"
]
},
"limit": {
"description": "Top N property values (only if `on` set). Default 60.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 10000
}
},
"required": [
"event",
"from_date",
"to_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mixpanel_retention(from_date, to_date, retention_type, born_event, event, ...)
Cohort retention: of users who did `born_event`, how many came back and did `event` over subsequent intervals. Query API: GET /retention.
입력 스키마
{
"type": "object",
"properties": {
"from_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date yyyy-mm-dd (inclusive)."
},
"to_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date yyyy-mm-dd (inclusive)."
},
"retention_type": {
"description": "birth = first-time retention (default), compounded = recurring.",
"type": "string",
"enum": [
"birth",
"compounded"
]
},
"born_event": {
"description": "The defining first event for a birth cohort. Required when retention_type=birth.",
"type": "string"
},
"event": {
"description": "Returning event to measure. If omitted, any event counts.",
"type": "string"
},
"born_where": {
"description": "Filter expression applied to born_event.",
"type": "string"
},
"where": {
"description": "Filter expression applied to the returning event.",
"type": "string"
},
"interval": {
"description": "Units per bucket (<=90 if days). Default 1.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"interval_count": {
"description": "Number of intervals to report.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"unit": {
"description": "Interval unit. Default day.",
"type": "string",
"enum": [
"day",
"week",
"month"
]
}
},
"required": [
"from_date",
"to_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mixpanel_list_funnels
Get the funnel_id and name of every saved funnel in the project. Query API: GET /funnels/list.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mixpanel_query_funnel(funnel_id, from_date, to_date, length, length_unit, ...)
Get conversion data for a saved funnel (use mixpanel_list_funnels to find funnel_id). Query API: GET /funnels.
입력 스키마
{
"type": "object",
"properties": {
"funnel_id": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991,
"description": "Saved funnel id (from mixpanel_list_funnels)."
},
"from_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date yyyy-mm-dd (inclusive)."
},
"to_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date yyyy-mm-dd (inclusive)."
},
"length": {
"description": "Conversion window length.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"length_unit": {
"description": "Unit for `length`.",
"type": "string",
"enum": [
"day",
"hour",
"minute",
"second",
"week",
"month"
]
},
"interval": {
"description": "Number of days per bucket.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"unit": {
"description": "Bucketing unit.",
"type": "string",
"enum": [
"day",
"week",
"month"
]
},
"limit": {
"description": "Limit on segmentation breakdown.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"funnel_id",
"from_date",
"to_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mixpanel_query_insights(bookmark_id, workspace_id)
Fetch the computed data behind a saved Insights report by bookmark_id (the report id in the board URL). Mixpanel's recommended, non-deprecated path for programmatic reporting. Query API: GET /insights.
입력 스키마
{
"type": "object",
"properties": {
"bookmark_id": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991,
"description": "Insights report id (bookmark_id) from the report URL."
},
"workspace_id": {
"description": "Workspace id, if applicable.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"bookmark_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mixpanel_jql(script, params)
Run a custom JQL (JavaScript Query Language) script for arbitrary analysis. Power-user escape hatch. Script must define main(). Query API: POST /jql. (Upstream maintenance mode; 2-min timeout, 5GB/query limit.)
입력 스키마
{
"type": "object",
"properties": {
"script": {
"type": "string",
"description": "JQL script defining function main(){ ... } that returns rows."
},
"params": {
"description": "Optional JSON string exposed to the script as the `params` global.",
"type": "string"
}
},
"required": [
"script"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}커뮤니티
증거